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
cptpingu
Messages postés3835Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention 1 novembre 2022124 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;