Bonjour à toutes et à tous,

J'aimerai tester si le dossier existe sinon le créer avec son sous dossier :

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
23
24
25
26
27
28
29
30
31
32
33
 
Var
fileSource, fileDest, S, wd, dossier: string;
begin
 
 wd := 'C:\' ;
 Dossier := 'new' ;  
 S := '\Test' ;
 
  fileSource := Wd + Dossier + '\BgroundDefault.jpg';
  fileDest := wd + Dossier + S + '\BgroundDefault.jpg';
 
 if not DirectoryExists(wd + Dossier + S) then
 
 if not CreateDir(wd + Dossier + S) then
 raise Exception.Create('Impossible de créer ce dossier');
 
      {Teste si le fichier existe, recopie l'original}
      if FileExists(wd + Dossier + '\BgroundDefault.Jpg') then
      CopyFile(PChar(fileSource), PChar(fileDest)) else
      showmessage('Ce fichier n''existe pas !');
 
 
      {Teste si le fichier existe, le renomme}
      if FileExists(wd + Dossier + '\BgroundDefault.Jpg') then begin
      Renamefile(wd + Dossier + '\BgroundDefault.Jpg', wd + Dossier + '\BgroundDefault.Jpg.backup');
      deletefile(wd + Dossier + '\BgroundDefault.Jpg')
      end
      else
      showmessage('Ce fichier n''est pas renommé !');
 
 
end;
Je pense que le chemin est trop long, car quand je teste avec uniquement :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
 if not DirectoryExists(wd + Dossier) then
 
 if not CreateDir(wd + Dossier) then
 raise Exception.Create('Impossible de créer ce dossier');
Cela fonctionne.

Merci de l'aide éventuelle.


@+,

Cincap