Code-Beispiel
Datei in den Papierkorb schieben
Lizenz: | Erster Autor: | Letzte Bearbeitung: |
k. A. | Volta | 24.10.2010 |
Statt eine Datei zu löschen, kann das verschieben in den Papiekorb manchmal viel Arbeit ersparen.
'Recycle_File.bas
#Define WIN_INCLUDEALL 'damit shellapi.bi eingebunden wird
#Include Once "windows.bi"
Function Recycle_File(filename As String) As Integer
Dim filestruct As SHFILEOPSTRUCT
With filestruct
.pFrom = StrPtr(filename)
.wFunc = FO_DELETE
.fFlags = FOF_ALLOWUNDO Or FOF_NOCONFIRMATION
End With
Return SHFileOperation(@filestruct)
End Function
'Um eine Datei rekonstruieren zu können, müssen Sie deren voll-
'ständigen Pfadnamen und natürlich das Flag FOF_ALLOWUNDO angeben
Print Recycle_File("C:\tmp\Datei2.txt")
Sleep
Bei meinem WinME war es unnötig den Filenamen mit einem doppel chr(0,0) abzuschließen.
Mit der gleichen API-Funktion lassen sich auch Dateien kopieren.
Hier eine Version mit chr(0,0).
'Copy_File.bas
#Include Once "windows.bi"
#Include "win\shellapi.bi"
Function Copy_File(f_from As String, f_to As String) As Integer
Dim filestruct As SHFILEOPSTRUCT
Dim As String fb_from = f_from + Chr(0,0)'M$ say, must be
Dim As String fb_to = f_to + Chr(0,0)'double-null terminated.
With filestruct
.wFunc = FO_COPY
.pFrom = StrPtr(fb_from)
.pTo = StrPtr(fb_to)
.fFlags = FOF_NOCONFIRMATION Or FOF_NOCONFIRMMKDIR
End With
Return SHFileOperation(@filestruct)
End Function
If Copy_File("C:\tmp\Datei.txt","C:\tmp\Datei2.txt") Then
MessageBox(0, "kopieren fehl geschlagen!", "Copy_File", _
MB_OK Or MB_ICONERROR)
EndIf
Zusätzliche Informationen und Funktionen |
- Das Code-Beispiel wurde am 23.10.2010 von Volta angelegt.
- Die aktuellste Version wurde am 24.10.2010 von Volta gespeichert.
|
|