Voila mon probleme, j'ai un programme qui utilise un peu l'ouverture fermeture de fichier.

En realité je l'utilise dans deux cas:
-pour ouvrir/fermer des fichiers (texte) de config
-pour ouvrir/fermer des fichiers (texte) et des images d'aide

voila le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
procedure TForm_main.Charger2Click(Sender: TObject);
var
        _ligne : string;
begin
        opendialog_main.execute;
        // Si aucun fichier n'a été selectionné
        if opendialog_main.filename <> '' then
        begin
                assignfile(le_fichier,opendialog_main.filename);
                reset(le_fichier);
                while not eof(le_fichier) do
                begin
                        readln(le_fichier,_ligne);
                        // On transmet chaque ligne a la fonction 'analyser'
                        // Qui mettra a jour les champs.
                        analyser(_ligne);
                end;
                closefile(le_fichier);
        end;
        gerer_chart();
end;
et

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
 
procedure TForm_help.afficher_aide(titre : string; fichier_texte : string; fichier_image : string);
begin
        // On affiche l'image d'aide
        if fichier_image <> '' then
        begin
                Image1.Picture.LoadFromFile('aide/' + fichier_image);
                // On affiche l'image d'aide, et on enleve l'image par defaut
                Image1.Visible := true;
                Image1.Left := Round(form_help.ClientWidth/2 - Image1.Width/2);
                form_help.ClientHeight := 330 + Image1.Height;
                Image_defaut.Visible := false;
        end;
end;
(je ne vous ai mis l'ouverture de l'image seulement, cela suffit.)

Mon probleme est le suivant.
- Je peux lancer autant de fois la procedure d'ouverture de l'aide, avec plusieurs fichiers images differents, aucun probleme.
- Je peux charger autant de fichier de configuration que je veux.

MAIS

Si je charge un fichier de config et que ensuite je veux lancer ma procedure d'ouverture des fichiers d'aide. Ca me met une erreur "impossible d'ouvrir le fichier xxx".

Pour chercher un peu l'erreur j'ai carrement "raccourci" la procedure d'ouverture de fichier config en le transformant ainsi:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
procedure TForm_main.Charger2Click(Sender: TObject);
var
        _ligne : string;
begin
        if opendialog_main.execute then
        showmessage('pouet');
end;
Autant dire qu'il ne reste plus que l'opendialog_execute. Mais... ca plante toujours, toujours la meme erreur, impossible d'ouvrir l'image. Alors que (je le repete) si en lancant le programme je vais directement lancer l'aide et donc ouvrir l'image il n'y a aucun programme...

qq'un a une idée? merci d'avance