Bonjour,
Savez-vous si il est possible de récupérer et afficher la progression d'une copie de fichier sur un réseau ?
Par exemple :
Afficher la progression de la copie du fichier "\\SRV\Rep\Fichier1.exe" vers "C:\Fichier1.exe"
Merci,
ZiP
Bonjour,
Savez-vous si il est possible de récupérer et afficher la progression d'une copie de fichier sur un réseau ?
Par exemple :
Afficher la progression de la copie du fichier "\\SRV\Rep\Fichier1.exe" vers "C:\Fichier1.exe"
Merci,
ZiP
Bonjour,
La fonction CopyFileEx permet d'appeler une fonction CallBack durant la copie.
Pour effectuer une copie d'un fichier en affichant la progression dans une progressbar :Ca fonctionne aussi pour une copie sur le réseau...
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 // Fonction CallBack : function CopyCallBack( TotalFileSize: LARGE_INTEGER; // Taille totale du fichier en octets TotalBytesTransferred: LARGE_INTEGER; // Nombre d'octets déjàs transférés StreamSize: LARGE_INTEGER; // Taille totale du flux en cours StreamBytesTransferred: LARGE_INTEGER; // Nombre d'octets déjà tranférés dans ce flus dwStreamNumber: DWord; // Numéro de flux actuel dwCallbackReason: DWord; // Raison de l'appel de cette fonction hSourceFile: THandle; // handle du fichier source hDestinationFile: THandle; // handle du fichier destination progressBar : TProgressBar ): DWord; far; stdcall; begin // Calcul de la position en % : ProgressBar.position := TotalBytesTransferred.QuadPart * 100 Div TotalFileSize.QuadPart; // La fonction doit définir si la copie peut être continuée. Result := PROGRESS_CONTINUE; end; procedure TForm1.myCopyFile(Source, Destination : String); var lpCancel: pointer; flag : integer; begin progressbar1.max := 100; lpCancel := 0; Flag := 0; // COPY_FILE_FAIL_IF_EXISTS et/ou COPY_FILE_RESTARTABLE CopyfileEx(pchar(Source),pchar(Destination),@CopyCallBack, progressBar1, lpCancel,Flag); end;
Bonne copie
Eb
Bonjour,
Merci, c'est exactement ce que je cherchais !
ZiP
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager