Copy File With Windows Animation
Copy File With Windows Animation
The example below will copy a file, exacly like if you've done so in
Windows. You will see Windows Copy animation, and if necessary, it will
ask the user to confirm file overwrite.
Preparations
Add 1 Command Button to your form.
Module Code
Option Explicit
Private Type SHFILEOPSTRUCT
hWnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Boolean
hNameMappings As Long
lpszProgressTitle As String
End Type
Declare Function SHFileOperation Lib "shell32.dll" Alias
"SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
Private Const FO_COPY = &H2
Private Const FOF_ALLOWUNDO = &H40
Public Sub SHCopyFile(ByVal from_file As String, ByVal to_file As String)
Dim sh_op As SHFILEOPSTRUCT
With sh_op
.hWnd = 0
.wFunc = FO_COPY
.pFrom = from_file & vbNullChar & vbNullChar
.pTo = to_file & vbNullChar & vbNullChar
.fFlags = FOF_ALLOWUNDO
End With
SHFileOperation sh_op
End Sub
Form Code
Private Sub Command1_Click()
'the following line will copy the file "d:\file.zip" to
"d:\temp\file2.zip"
SHCopyFile "d:\file.zip", "d:\temp\file2.zip"
End Sub
|