louiwahl
Messages postés103Date d'inscriptionvendredi 20 février 2004StatutMembreDernière intervention16 mai 2019
-
27 juil. 2005 à 23:17
louiwahl
Messages postés103Date d'inscriptionvendredi 20 février 2004StatutMembreDernière intervention16 mai 2019
-
2 août 2005 à 21:07
Bjr
J'enregistre des repertoires pour ma sauvegarde mais si ils existe il faut confirmer l'ecrasement et je voudrais que ca se fasse automatiquement
si quel qu'un sait
Merci d'avance
Louis
A voir également:
Cmd ne prend pas les chemins unc comme répertoires en cours
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 28 juil. 2005 à 03:53
Je comprends pas bien ta question, tu veux créer un message lorsqu'on
écrase un dossier, ou virer ce type de message ? Dans le doute,
je vais répondre au deux question.
1_
Je ne sais pas quel composant tu utilise mais verifie la propriete Option > ofCreatePrompt (met a Vrai).
Sinon tu vérifie manuellement, avec la fonction DirectoryExists.
Exemple:
If DirectoryExists('C:\Mon repertoire') then //<Ton action>
// Si tu utilise le composant TSaveDialog par exemple, tu fais:
If DirectoryExists(ExtractFilePath(SaveDialog1.FileName) then //<Ton action>
2_
Je ne sais pas quel composant tu utilise mais verifie dans la propriete Option:
louiwahl
Messages postés103Date d'inscriptionvendredi 20 février 2004StatutMembreDernière intervention16 mai 2019 29 juil. 2005 à 00:16
Bjr
En fait ce que je voudrais c'est :
Quand je recopie un repertoire Windows ne me demande pas confirmation avant
d'ecraser celui qui existe deja
je met le code que je me sert
procedure copier(Handle:HWND;Source,Cible:String; FlagsOptions: FILEOP_FLAGS);
var
lpFileOp:TSHFileOpStructA;
TabFrom:array[0..255] of char;
i:integer;
begin
For i:=0 to length(Source)-1 do
TabFrom[i]:=Source[i+1];
TabFrom[length(Source)]:=#0;
TabFrom[length(Source)+1]:=#0;
lpFileOp.Wnd:=handle;
lpFileOp.wFunc:=FO_COPY;
lpFileOp.pFrom:=TabFrom;
lpFileOp.pTo:=PAnsiChar(Cible);
lpFileOp.fFlags:=FlagsOptions;
SHFileOperation(lpFileOp);
end;
procedure TForm1.CopierBtnClick(Sender: TObject);
Var
i: integer;
begin
For i := 0 to ListBoxRepSource.Items.Count-1 do
begin
EditSauveDepuis.Text := ListBoxRepSource.Items[I];
Copier(Handle,(EditSauveDepuis.Text),(EditRepSauve.Text),FlagsOptions);
If (ListRepSource.Items[I] = ListBoxRepSource.Items[ListBoxRepSource.Items.Count-1])
then MessageDlg(' Sauvegarde de repertoire effectuée avec succés ',mtConfirmation,[mbOK],0);
end;
end;
Merci pour vos reponses
A+ Louis
Vous n’avez pas trouvé la réponse que vous recherchez ?
louiwahl
Messages postés103Date d'inscriptionvendredi 20 février 2004StatutMembreDernière intervention16 mai 2019 29 juil. 2005 à 00:16
Bjr
En fait ce que je voudrais c'est :
Quand je recopie un repertoire Windows ne me demande pas confirmation avant
d'ecraser celui qui existe deja
je met le code que je me sert
procedure copier(Handle:HWND;Source,Cible:String; FlagsOptions: FILEOP_FLAGS);
var
lpFileOp:TSHFileOpStructA;
TabFrom:array[0..255] of char;
i:integer;
begin
For i:=0 to length(Source)-1 do
TabFrom[i]:=Source[i+1];
TabFrom[length(Source)]:=#0;
TabFrom[length(Source)+1]:=#0;
lpFileOp.Wnd:=handle;
lpFileOp.wFunc:=FO_COPY;
lpFileOp.pFrom:=TabFrom;
lpFileOp.pTo:=PAnsiChar(Cible);
lpFileOp.fFlags:=FlagsOptions;
SHFileOperation(lpFileOp);
end;
procedure TForm1.CopierBtnClick(Sender: TObject);
Var
i: integer;
begin
For i := 0 to ListBoxRepSource.Items.Count-1 do
begin
EditSauveDepuis.Text := ListBoxRepSource.Items[I];
Copier(Handle,(EditSauveDepuis.Text),(EditRepSauve.Text),FlagsOptions);
If (ListRepSource.Items[I] = ListBoxRepSource.Items[ListBoxRepSource.Items.Count-1])
then MessageDlg(' Sauvegarde de repertoire effectuée avec succés ',mtConfirmation,[mbOK],0);
end;
end;