Lecture de fichier sans chemin complet : ne fonctionne pas à l'exécution sous l'IDE
Bonjour,
Simple procédure déclenchée par un bouton pour lire un simple fichier de quelques lignes "lisezmoi.txt" situé dans le répertoire de l'exécutable:
Code:
1 2 3 4 5 6 7 8 9 10
| procedure TMaForm.btnClick(Sender:TObject);
var
s:String;
begin
s:=ReadFileToString('lisezmoi.txt');//'lisezmoi.txt' pas trouvé si exécution sous Lazarus
// s:=ReadFileToString(ExtractFilePath(ParamStr(0))+'lisezmoi.txt');// marche toujours
if s='' then
s:='Fichier lisezmoi.txt absent.';
ShowMessage(s);
end; |
Lors de l'exécution depuis l'IDE, même sans débogage, le fichier lisezmoi.txt ne semble pas trouvé s'il n'est pas identifié par son adresse complète.
Aucun problème par contre en exécution directe.
Même problème en remplaçant ReadFileToString par l'utilisation d'un TStringList.LoadFromFile('lisezmoi.txt').
Je n'avais pas vu ce problème avant le passage en version 3.0 sous FPC 3.2.2.
Une explication?
André