给一个用API一次删除含有文件的目录或文件夹 有例子 应该有用 Private Const FO_MOVE = &H1 Private Const FO_COPY = &H2 Private Const FO_DELETE = &H3 Private Const FO_RENAME = &H4 Private Const FOF_NOCONFIRMATION = &H10 Private Const FOF_SILENT = &H4 Private Const FOF_NOERRORUI = &H400 Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long Private 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 ' only used if FOF_SIMPLEPROGRESS End Type
Public Function KillPath(ByVal sPath As String) As Boolean On Error Resume Next Dim udtPath As SHFILEOPSTRUCT udtPath.hwnd = 0 udtPath.wFunc = FO_DELETE udtPath.pFrom = sPath udtPath.pTo = "" udtPath.fFlags = FOF_NOCONFIRMATION Or FOF_SILENT Or FOF_NOERRORUI KillPath = Not CBool(SHFileOperation(udtPath)) End Function
一定要用API吗? 我用 shell (" tree c:\ >11.txt ") 再分析11.txt 内容就很方便的
Private Const FO_MOVE = &H1
Private Const FO_COPY = &H2
Private Const FO_DELETE = &H3
Private Const FO_RENAME = &H4
Private Const FOF_NOCONFIRMATION = &H10
Private Const FOF_SILENT = &H4
Private Const FOF_NOERRORUI = &H400
Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
Private 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 ' only used if FOF_SIMPLEPROGRESS
End Type
Public Function KillPath(ByVal sPath As String) As Boolean
On Error Resume Next
Dim udtPath As SHFILEOPSTRUCT
udtPath.hwnd = 0
udtPath.wFunc = FO_DELETE
udtPath.pFrom = sPath
udtPath.pTo = ""
udtPath.fFlags = FOF_NOCONFIRMATION Or FOF_SILENT Or FOF_NOERRORUI
KillPath = Not CBool(SHFileOperation(udtPath))
End Function
再分析11.txt 内容就很方便的