Grafica - Animazione ' copia File'




Api # Per emulare l'animazione del file che vola da una cartella ad un'altra, esiste
una funzione API che gestisce tutta l'operazione:
Dichiarazioni da inserire In un modulo Bas
Public Const FO_COPY As Long = &H2
Type SHFILEOPSTRUCT
hwnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Long
fAnyOperationsAborted As Long
hNameMappings As Long
lpszProgressTitle As String
End Type
Declare Function SHFileOperation Lib "Shell32.dll" _
Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
Codice per eseguire la copia da inserire In una procedura (per esempio
Command_Click)
Private Sub Command1_Click()
Dim result As Long
Dim fileop As SHFILEOPSTRUCT
With fileop
.hwnd = Me.hwnd
.wFunc = FO_COPY
' Possono essere copiati piu' file i quali devono essere separati da un carettere

nullo,
' e la lista deve essere terminata da 2 caratteri nulli...

.pFrom = "C:\ESEMPIO\MIOFILE.TXT" & vbNullChar & "C:\ESEMPIO\MIOHELP.HLP" & _
vbNullChar & vbNullChar
' ...oppure possono essere copiati tutti i file's di una directory utilizzando

'questa riga di codice

'.pFrom = "C:\ESEMIPO\*.*" & vbNullChar & vbNullChar

' La destinazione dei file's deve essere terminata con due caratteri nulli

.pTo = "C:\testfolder\" & vbNullChar & vbNullChar
.fFlags = FOF_SIMPLEPROGRESS Or FOF_FILESONLY
End With
'Esegue l'operazione

result = SHFileOperation(fileop)
If result <> 0 Then 'Si e' verificato un errore
MsgBox Err.LastDllError 'Visualizza l'errore riportato dalla chiamata alla dll
Else
If fileop.fAnyOperationsAborted <> 0 Then 'Operazione annullata
MsgBox "Operazione annullata dall'utente!"
End If
End If
End Sub











( graficaanimazione'copiafile'.html )- by Paolo Puglisi - Modifica del 17/12/2023