Cette source montre la façon d'utiliser l'api CopyFileEx pour copier un fichier avec affichage de la progression et l'api MoveFileWithProgress (sous 2000 et XP) pour déplacer un fichier.
J'ai vu des sources qui faisaient la même chose sans utiliser pas les apis : c'est plus compliqué et surement moins rapide.
Source / Exemple :
'voir le zip
Conclusion :
N'hésitez pas à commenter et à noter !
Ce code fonctionne sur tous windows sauf l'api MoveFileWithProgress qui n'est utilisable que sous 2000/XP et successeurs. Elle n'existe pas sous NT4.
1 déc. 2008 à 19:49
Super code qui me sauve la vie et plus fiable que ceux qui n'utilise pas l'api.
Testé sous vista marche impec !!!
22 févr. 2008 à 21:55
normalement, cela devrait être corrigé...
ShareVB
20 févr. 2008 à 11:24
je viens de tester mais la barre de progression et les détails ne sont pas rafraichi
8 févr. 2006 à 03:47
par contre j'ai un probleme, je copie plusieurs fichierSSS, cela fonctionne numero un sauf que je dois supprimer la ligne suivant car cela me donne l'errreur suivante : Dépacement de capacité
donc je supprime la ligne suivante et cela marche : PB.Value = (TotalBytesTransferred / TotalFileSize) * 100.
voici l'appelle de la fonction
For i = 1 To UBound(variable)
'MsgBox variable(i)
lblFichier.Caption = variable(i)
'-------------------------------------
FichSource = RepSource & variable(i)
FichDestination = App.Path & "\Autorun\Prog" & DossierCopie & "" & variable(i)
If CopyFileWithProgress(FichSource, FichDestination, PB) = 0 Then
Dim Buffer As String
'Crée le buffer
Buffer = Space(200)
'Formate le message
FormatMessage FORMAT_MESSAGE_FROM_SYSTEM, ByVal 0&, GetLastError, LANG_NEUTRAL, Buffer, 200, ByVal 0&
'affiche le message d'erreur
MsgBox Buffer, vbCritical
Else
MsgBox "Opération réussie avec succès.", vbInformation
End If
'---------------------------------------
Next i
Merci si tu sais pkoi
DraaFil
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.