Accueil > > > COPIER UN FICHIER
COPIER UN FICHIER
Information sur la source
Description
Voici comment copier un fichier: j'ai recopié l'aide de geddi mais je l'ai modifié pour le rendre à la portée des novices en vb. la commande est on ne peut plus simple. dans votre code inscrivez ceci(plus le module dans le zip) J'ai fait un module que vous pourrez ajouter à votre projet.
Source
- resultat = copier("c:\test.txt","c:\test2.txt") 'dans n'importe quel endroit de votre projet afin de copier un fichier
-
-
- 'Les lignes suivantes dans un module ( projet/ajouter un module)
- '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
- 'Declarations
- Public Const FO_COPY = &H2
- Public Const FO_DELETE = &H3
- Public Const FO_MOVE = &H1
- Public Const FO_RENAME = &H4
-
- Public Const FOF_CONFIRMMOUSE = &H2
- Public Const FOF_ALLOWUNDO = &H40
- Public Const FOF_FILESONLY = &H80
- Public Const FOF_MULTIDESTFILES = &H1
- Public Const FOF_NOCONFIRMATION = &H10
- Public Const FOF_NOCONFIRMMKDIR = &H200
- Public Const FOF_NO_CONNECTED_ELEMENTS = &H1000
- Public Const FOF_NOCOPYSECURITYATTRIBS = &H800
- Public Const FOF_NOERRORUI = &H400
- Public Const FOF_RENAMEONCOLLISION = &H8
- Public Const FOF_SILENT = &H4
- Public Const FOF_SIMPLEPROGRESS = &H100
- Public Const FOF_WANTMAPPINGHANDLE = &H20
- Public Const FOF_WANTNUKEWARNING = &H2000
- Public Const FOF_NORECURSION = &H1000 '// don't recurse into directories.
-
- Public Type SHFILEOPSTRUCT
- hWnd As Long
- wFunc As Long
- pFrom As String
- pTo As String
- fFlags As Integer
- fAnyOperationsAborted As Long
- hNameMappings As Long
- lpszProgressTitle As String
- End Type
-
- Public Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" _
- (Dest As Any, Sourc As Any, ByVal Length As Long)
-
- Public Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" _
- (lpFileOp As Any) As Long
-
- Public Function copier(FROM As String, copie As String)
- On Error GoTo erreur
- Dim fso, msg
- Set fso = CreateObject("Scripting.FileSystemObject")
- If Not fso.FileExists(FROM) Then 'on verifie si le fichier existe
- copier = "Le fichier n'existe pas"
- Exit Function
- erreur:
- copier = "Une erreur c'est produite"
- Exit Function
- End If
-
-
-
-
- Dim fos As SHFILEOPSTRUCT ' structure to pass to the function
- Dim retval As Long ' return value
-
- With fos
- .hWnd = 0 'ou Me.hWnd si on a une Feuille par exemple
- .wFunc = FO_COPY 'Action == Copie
- .pFrom = FROM & vbNullChar 'Source path
- .pTo = copie & vbNullChar 'Dest Path
- .fFlags = FOF_NOCONFIRMMKDIR Or FOF_WANTMAPPINGHANDLE 'Flags de Copie
- .fAnyOperationsAborted = 0
- .hNameMappings = 0
- .lpszProgressTitle = vbNullChar
- End With
-
- retval = SHFileOperation(fos)
- copier = "OK"
- End Function
- ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
resultat = copier("c:\test.txt","c:\test2.txt") 'dans n'importe quel endroit de votre projet afin de copier un fichier
'Les lignes suivantes dans un module ( projet/ajouter un module)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Declarations
Public Const FO_COPY = &H2
Public Const FO_DELETE = &H3
Public Const FO_MOVE = &H1
Public Const FO_RENAME = &H4
Public Const FOF_CONFIRMMOUSE = &H2
Public Const FOF_ALLOWUNDO = &H40
Public Const FOF_FILESONLY = &H80
Public Const FOF_MULTIDESTFILES = &H1
Public Const FOF_NOCONFIRMATION = &H10
Public Const FOF_NOCONFIRMMKDIR = &H200
Public Const FOF_NO_CONNECTED_ELEMENTS = &H1000
Public Const FOF_NOCOPYSECURITYATTRIBS = &H800
Public Const FOF_NOERRORUI = &H400
Public Const FOF_RENAMEONCOLLISION = &H8
Public Const FOF_SILENT = &H4
Public Const FOF_SIMPLEPROGRESS = &H100
Public Const FOF_WANTMAPPINGHANDLE = &H20
Public Const FOF_WANTNUKEWARNING = &H2000
Public Const FOF_NORECURSION = &H1000 '// don't recurse into directories.
Public Type SHFILEOPSTRUCT
hWnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Long
hNameMappings As Long
lpszProgressTitle As String
End Type
Public Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" _
(Dest As Any, Sourc As Any, ByVal Length As Long)
Public Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" _
(lpFileOp As Any) As Long
Public Function copier(FROM As String, copie As String)
On Error GoTo erreur
Dim fso, msg
Set fso = CreateObject("Scripting.FileSystemObject")
If Not fso.FileExists(FROM) Then 'on verifie si le fichier existe
copier = "Le fichier n'existe pas"
Exit Function
erreur:
copier = "Une erreur c'est produite"
Exit Function
End If
Dim fos As SHFILEOPSTRUCT ' structure to pass to the function
Dim retval As Long ' return value
With fos
.hWnd = 0 'ou Me.hWnd si on a une Feuille par exemple
.wFunc = FO_COPY 'Action == Copie
.pFrom = FROM & vbNullChar 'Source path
.pTo = copie & vbNullChar 'Dest Path
.fFlags = FOF_NOCONFIRMMKDIR Or FOF_WANTMAPPINGHANDLE 'Flags de Copie
.fAnyOperationsAborted = 0
.hNameMappings = 0
.lpszProgressTitle = vbNullChar
End With
retval = SHFileOperation(fos)
copier = "OK"
End Function
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Conclusion
le premier parametre entre guillemet est le fichier existant de source et le deuxieme la cible.
La variable resultat contient soit "ok" soit un message d'erreur
Sources du même auteur
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|