'add a filelist to form1 Option Explicit Private Type SHFILEOPSTRUCT hWnd As Long wFunc As Long pFrom As String pTo As String fFlags As Integer fAborted As Boolean hNameMaps As Long sProgress As String End Type '文件操作函数类型参数 Private Const FO_DELETE = &H3 '本参数代表删除 Private Const FOF_ALLOWUNDO = &H40 '本参数表示将文件放入回收站 Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long Public Sub ShellDeleteOne(sFile As String, ActionFlag As Long) '自定义文件删除操作函数ShellDeleteOne,第一个参数指定被删除的文件名,第二个参数指定是否放入回收站 Dim SHFileOp As SHFILEOPSTRUCT Dim r As Long sFile = sFile & Chr$(0) With SHFileOp .wFunc = FO_DELETE .pFrom = sFile .fFlags = ActionFlag '如果ActionFlag=0表示绝对删除,而ActionFlag=FOF_ALLOWUNDO表示放入回收站 End With r = SHFileOperation(SHFileOp) '执行删除操作 End Sub Private Sub File1_Click() Dim myfile As String myfile = App.Path & "\" & File1.FileName ShellDeleteOne myfile, FOF_ALLOWUNDO File1.Refresh End SubPrivate Sub Form_Load() File1.Path = App.Path End Sub
Option Explicit
Private Type SHFILEOPSTRUCT
hWnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAborted As Boolean
hNameMaps As Long
sProgress As String
End Type '文件操作函数类型参数 Private Const FO_DELETE = &H3 '本参数代表删除
Private Const FOF_ALLOWUNDO = &H40 '本参数表示将文件放入回收站 Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
Public Sub ShellDeleteOne(sFile As String, ActionFlag As Long) '自定义文件删除操作函数ShellDeleteOne,第一个参数指定被删除的文件名,第二个参数指定是否放入回收站 Dim SHFileOp As SHFILEOPSTRUCT
Dim r As Long sFile = sFile & Chr$(0) With SHFileOp .wFunc = FO_DELETE .pFrom = sFile .fFlags = ActionFlag '如果ActionFlag=0表示绝对删除,而ActionFlag=FOF_ALLOWUNDO表示放入回收站
End With r = SHFileOperation(SHFileOp) '执行删除操作
End Sub
Private Sub File1_Click()
Dim myfile As String
myfile = App.Path & "\" & File1.FileName
ShellDeleteOne myfile, FOF_ALLOWUNDO
File1.Refresh
End SubPrivate Sub Form_Load()
File1.Path = App.Path
End Sub