Accueil > > > SHFILEOPERATION :: COPIER/SUPPRIMER DES FICHIERS
SHFILEOPERATION :: COPIER/SUPPRIMER DES FICHIERS
Information sur la source
Description
Declaration et Utilisation fonctionnelle de SHFileOperation : ou comment utiliser cette fonction puissante de Windows pour copier/deplacer des fichiers/repertoires
Source
- 'Delarations
- 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
-
- 'Main program example
- Sub Main()
- 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 = "c:\toto" & vbNullChar 'Source path
- .pTo = "c:\temp" & vbNullChar 'Dest Path
- .fFlags = FOF_NOCONFIRMMKDIR Or FOF_WANTMAPPINGHANDLE 'Flags de Copie
- .fAnyOperationsAborted = 0
- .hNameMappings = 0
- .lpszProgressTitle = vbNullChar
- End With
-
- retval = SHFileOperation(fos)
-
- End Sub
'Delarations
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
'Main program example
Sub Main()
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 = "c:\toto" & vbNullChar 'Source path
.pTo = "c:\temp" & vbNullChar 'Dest Path
.fFlags = FOF_NOCONFIRMMKDIR Or FOF_WANTMAPPINGHANDLE 'Flags de Copie
.fAnyOperationsAborted = 0
.hNameMappings = 0
.lpszProgressTitle = vbNullChar
End With
retval = SHFileOperation(fos)
End Sub
Conclusion
A noter l'emploi de Any dans (lpFileOp As Any) qui evite de planter VB :)
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Comment copier et coller un fichier sous vb 3.0 [ par Cyber ]
Je voudrais savoir comment copier et coller un fichier d'un doosier a un autre.Merci d'avance!!!!!
Couper, Copier, Coller ????? [ par Brodeur ]
Bonjour, je me demandais en passant , mais comment qu'on fait pour faire un copier coller. Ainsi, je voudrais selectionner une partie de mon texte, a
Copier-Coller-Couper [ par DEL ]
========================================je voudrai savoir comment faire dans un textbox pour permettre de faire copier, couper, coller avec les raccou
Copier/Coller un fichier binaire d'un ListView vers le presse-papier [ par Schum ]
Je cherche à faire ce qui est marqué dans le titre.Je ne vois pas comment... HELP ME
Copier/Coller un fichier binaire d'un ListView vers le presse-papier [ par Schum ]
Le titre résume tout...Comment copier un(des) fichier vers le presse-papier, pour pouvoir les coller dans l'explorateur de Windows?????!!!HELP ME URGE
copier/coller/renommer un fichier [ par kidpigeyre ]
Comment faire pour copier/coller/renommer un fichier?Merci.
Comment copier un fichier et le coller dans un dossier ? [ par Chricl ]
Voila, je dispose d'un fichier Qui à pour nom xxx.cnt dans un certain dossier, et je dispose du même fichier dans un autre dossier.Le premier fichier
Copier/Coller l'intégralité d'un fichier text [ par patou1000 ]
bonjour, je voudrais savoir comment peut on copier l'intégralité (tous les caractères sauts de ligne et tabulations) d'un fichier texte (txt) dans le
Couper, Copier, Coller [ par Unrealll ]
J'aimerais offrire la possibilité de faire des couper, copier et coller dans mon application (MDI). J'ai trouvé un bout de code fonctionnel pour un pe
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Logiciels
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 Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|