try thisPrivate 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 '只有在 FOF_SIMPLEPROGRESS 时用 End TypePrivate Declare Function SHFileOperation Lib _ "shell32.dll" Alias "SHFileOperationA" (lpFileOp _ As SHFILEOPSTRUCT) As Long'wFunc 常数 'FO_COPY 把 pFrom 文件拷贝到 pTo。 Const FO_COPY = &H2 'FO_DELETE 删除 pFrom 中的文件(pTo 忽略)。 Const FO_DELETE = &H3 'FO_MOVE 把 pFrom 文件移动到 pTo。 Const FO_MOVE = &H1'fFlag 常数 'FOF_ALLOWUNDO 允许 Undo 。 Const FOF_ALLOWUNDO = &H40 'FOF_NOCONFIRMATION 不显示系统确认对话框。 Const FOF_NOCONFIRMATION = &H10 'FOF_NOCONFIRMMKDIR 不提示是否新建目录。 Const FOF_NOCONFIRMMKDIR = &H200 'FOF_SILENT 不显示进度对话框 Const FOF_SILENT = &H4例子: Dim SHFileOp As SHFILEOPSTRUCT ' 删除 SHFileOp.wFunc = FO_DELETE SHFileOp.pFrom = "c:\config.old" + Chr(0) SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION Call SHFileOperation(SHFileOp) ' 删除多个文件 SHFileOp.wFunc = FO_DELETE SHFileOp.pFrom = "c:\config.old" +Chr(0) + "c:\autoexec.old"+Chr(0) SHFileOp.fFlags = FOF_ALLOWUNDO Call SHFileOperation(SHFileOp) ' 拷贝 SHFileOp.wFunc = FO_COPY SHFileOp.pFrom = "c:\t\*.*" SHFileOp.pTo = "d:\t\*.*" SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMMKDIR Call SHFileOperation(SHFileOp) ' 移动 SHFileOp.wFunc = FO_MOVE SHFileOp.pFrom = "c:\config.old" + Chr(0) SHFileOp.pTo = "d:\t" SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION Call SHFileOperation(SHFileOp)
使用以下的 API , 得到与资源管理器相同的感觉! 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 '只有在 FOF_SIMPLEPROGRESS 时用 End TypePrivate Declare Function SHFileOperation Lib _ "shell32.dll" Alias "SHFileOperationA" (lpFileOp _ As SHFILEOPSTRUCT) As Long'wFunc 常数 'FO_COPY 把 pFrom 文件拷贝到 pTo。 Const FO_COPY = &H2 'FO_DELETE 删除 pFrom 中的文件(pTo 忽略)。 Const FO_DELETE = &H3 'FO_MOVE 把 pFrom 文件移动到 pTo。 Const FO_MOVE = &H1'fFlag 常数 'FOF_ALLOWUNDO 允许 Undo 。 Const FOF_ALLOWUNDO = &H40 'FOF_NOCONFIRMATION 不显示系统确认对话框。 Const FOF_NOCONFIRMATION = &H10 'FOF_NOCONFIRMMKDIR 不提示是否新建目录。 Const FOF_NOCONFIRMMKDIR = &H200 'FOF_SILENT 不显示进度对话框 Const FOF_SILENT = &H4例子: Dim SHFileOp As SHFILEOPSTRUCT ' 删除 SHFileOp.wFunc = FO_DELETE SHFileOp.pFrom = "c:\config.old" + Chr(0) SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION Call SHFileOperation(SHFileOp) ' 删除多个文件 SHFileOp.wFunc = FO_DELETE SHFileOp.pFrom = "c:\config.old" +Chr(0) + "c:\autoexec.old"+Chr(0) SHFileOp.fFlags = FOF_ALLOWUNDO Call SHFileOperation(SHFileOp) ' 拷贝 SHFileOp.wFunc = FO_COPY SHFileOp.pFrom = "c:\t\*.*" SHFileOp.pTo = "d:\t\*.*" SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMMKDIR Call SHFileOperation(SHFileOp) ' 移动 SHFileOp.wFunc = FO_MOVE SHFileOp.pFrom = "c:\config.old" + Chr(0) SHFileOp.pTo = "d:\t" SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION Call SHFileOperation(SHFileOp)
'****************************************************************************************** 'SHFileOperation Public Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long'酷!WINDOWS中的文件复制、移动、删除和重命名都可以在这个函数中表现出来,包括复制进度等,酷!请查阅:SHFILEOPSTRUCT 结构!如:Dim SFI As SHFILEOPSTRUCT ' SFI.hwnd = Me.hwnd ' SFI.wFunc = FO_COPY ' SFI.pFrom = "c:\command.com" ' SFI.pTo = "d:\" ' 'SHFileOperation SFI'#########################################################################################'****************************************************************************************** 'FO_COPY Public Const FO_COPY = &H2'实现复制(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!) '######################################################################################### '****************************************************************************************** 'FO_DELETE Public Const FO_DELETE = &H3'实现移动(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!) '######################################################################################### '****************************************************************************************** 'FO_RENAME Public Const FO_RENAME = &H4'实现重命名(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!) '######################################################################################### '****************************************************************************************** 'FO_MOVE Public Const FO_MOVE = &H1'实现删除(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!) '######################################################################################### '****************************************************************************************** 'SHFILEOPSTRUCT Public 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''实现删除(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!) ''######################################################################################### dim SFI as SHFILEOPSTRUCT SFI.hwnd = Me.hwnd SFI.wFunc = FO_COPY SFI.fFlags=0 SFI.pFrom = "c:\1.mdb" SFI.pTo = "d:\"
hwnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Long
hNameMappings As Long
lpszProgressTitle As String '只有在 FOF_SIMPLEPROGRESS 时用
End TypePrivate Declare Function SHFileOperation Lib _
"shell32.dll" Alias "SHFileOperationA" (lpFileOp _
As SHFILEOPSTRUCT) As Long'wFunc 常数
'FO_COPY 把 pFrom 文件拷贝到 pTo。
Const FO_COPY = &H2
'FO_DELETE 删除 pFrom 中的文件(pTo 忽略)。
Const FO_DELETE = &H3
'FO_MOVE 把 pFrom 文件移动到 pTo。
Const FO_MOVE = &H1'fFlag 常数
'FOF_ALLOWUNDO 允许 Undo 。
Const FOF_ALLOWUNDO = &H40
'FOF_NOCONFIRMATION 不显示系统确认对话框。
Const FOF_NOCONFIRMATION = &H10
'FOF_NOCONFIRMMKDIR 不提示是否新建目录。
Const FOF_NOCONFIRMMKDIR = &H200
'FOF_SILENT 不显示进度对话框
Const FOF_SILENT = &H4例子:
Dim SHFileOp As SHFILEOPSTRUCT
' 删除
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:\config.old" + Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
' 删除多个文件
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:\config.old" +Chr(0) + "c:\autoexec.old"+Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO
Call SHFileOperation(SHFileOp)
' 拷贝
SHFileOp.wFunc = FO_COPY
SHFileOp.pFrom = "c:\t\*.*"
SHFileOp.pTo = "d:\t\*.*"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMMKDIR
Call SHFileOperation(SHFileOp)
' 移动
SHFileOp.wFunc = FO_MOVE
SHFileOp.pFrom = "c:\config.old" + Chr(0)
SHFileOp.pTo = "d:\t"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
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 '只有在 FOF_SIMPLEPROGRESS 时用
End TypePrivate Declare Function SHFileOperation Lib _
"shell32.dll" Alias "SHFileOperationA" (lpFileOp _
As SHFILEOPSTRUCT) As Long'wFunc 常数
'FO_COPY 把 pFrom 文件拷贝到 pTo。
Const FO_COPY = &H2
'FO_DELETE 删除 pFrom 中的文件(pTo 忽略)。
Const FO_DELETE = &H3
'FO_MOVE 把 pFrom 文件移动到 pTo。
Const FO_MOVE = &H1'fFlag 常数
'FOF_ALLOWUNDO 允许 Undo 。
Const FOF_ALLOWUNDO = &H40
'FOF_NOCONFIRMATION 不显示系统确认对话框。
Const FOF_NOCONFIRMATION = &H10
'FOF_NOCONFIRMMKDIR 不提示是否新建目录。
Const FOF_NOCONFIRMMKDIR = &H200
'FOF_SILENT 不显示进度对话框
Const FOF_SILENT = &H4例子:
Dim SHFileOp As SHFILEOPSTRUCT
' 删除
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:\config.old" + Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
' 删除多个文件
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:\config.old" +Chr(0) + "c:\autoexec.old"+Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO
Call SHFileOperation(SHFileOp)
' 拷贝
SHFileOp.wFunc = FO_COPY
SHFileOp.pFrom = "c:\t\*.*"
SHFileOp.pTo = "d:\t\*.*"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMMKDIR
Call SHFileOperation(SHFileOp)
' 移动
SHFileOp.wFunc = FO_MOVE
SHFileOp.pFrom = "c:\config.old" + Chr(0)
SHFileOp.pTo = "d:\t"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
'******************************************************************************************
'SHFileOperation
Public Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long'酷!WINDOWS中的文件复制、移动、删除和重命名都可以在这个函数中表现出来,包括复制进度等,酷!请查阅:SHFILEOPSTRUCT 结构!如:Dim SFI As SHFILEOPSTRUCT
' SFI.hwnd = Me.hwnd
' SFI.wFunc = FO_COPY
' SFI.pFrom = "c:\command.com"
' SFI.pTo = "d:\"
'
'SHFileOperation SFI'#########################################################################################'******************************************************************************************
'FO_COPY
Public Const FO_COPY = &H2'实现复制(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!)
'#########################################################################################
'******************************************************************************************
'FO_DELETE
Public Const FO_DELETE = &H3'实现移动(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!)
'#########################################################################################
'******************************************************************************************
'FO_RENAME
Public Const FO_RENAME = &H4'实现重命名(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!)
'#########################################################################################
'******************************************************************************************
'FO_MOVE
Public Const FO_MOVE = &H1'实现删除(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!)
'#########################################################################################
'******************************************************************************************
'SHFILEOPSTRUCT
Public 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''实现删除(SHFILEOPSTRUCT 结构中 wFunc 的参数我们用在SHFileOperation API函数中,强烈推荐!)
''#########################################################################################
dim SFI as SHFILEOPSTRUCT
SFI.hwnd = Me.hwnd
SFI.wFunc = FO_COPY
SFI.fFlags=0
SFI.pFrom = "c:\1.mdb"
SFI.pTo = "d:\"
SHFileOperation SFI
这是WINDOWS自带的复制功能!!!