Savoir si un fichier est déja ouvert? ...D6
Bonjour
Tout est dans la question...
J'ai un processus qui crée un fichier et un autre attend la fin pour pouvoir le modifier.
Est-ce qu'il existe une fonction Delphi qui donne l'information?...
Je ne veux pas tenter de l'ouvrir et déclencher une erreur...
J'ai aussi tenté ça
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| function EnumereFichiersOuverts(Repertoire:string):integer;
(*******************************}
Retourne le nombre de fichiers qui sont en création
(*******************************)
var f:tsearchrec;
ft: TextFile;
begin
result:=0;
if findfirst(repertoire,faanyfile,f)=0 then repeat
if f.Name[1]<>'.' then begin
assign(ft,f.Name);
if (TTextRec(ft).Mode <> fmClosed)//il le considère toujours fermé même s'il est ouvert...
then inc(result);
{
CloseFile(ft);//déclenche d'ailleurs une exception ;)
}
end;
until findnext(F)>0;
SysUtils.findclose(f);
end; |
Ça ne fonctionne pas, peut-être car le processus crée le fichier avec un stream...
Merci d'avance