windows2003服务器复制文件弹出正在复制的进度条,[代码]复制/移动文件,并显示相应的进度条对话框...

Option Explicit

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

End Type

Private Declare Function SHFileOperation Lib "shell32.dll" _

Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long

Private Const FOF_ALLOWUNDO = &H40

Private Const FOF_NOCONFIRMATION = &H10

Private Const FOF_SIMPLEPROGRESS = &H100

Private Const FO_COPY = &H2

Private Const FO_MOVE = &H1

'--------------------------------------------------------------------------------

' 过程: ShellFileCopy

' 描述: 复制文件,并显示“正在复制...”进度条对话框

' 返回: [Boolean] True为复制成功,False为复制失败

'

' 参数:

'     Src (String)                      要复制的源文件

'     Dest (String)                     要复制到的位置

'     hWnd (Long)                       父窗体的句柄(可选)

'     NoShowText (Boolean = False)      是否不显示复制的文件名

'     NoConfirm (Boolean = False)       是否不显示确认对话框

'

'--------------------------------------------------------------------------------

Public Function ShellFileCopy(Src As String, Dest As String, _

Optional hWnd As Long, _

Optional NoShowText As Boolean = False, _

Optional NoConfirm As Boolean = False) As Boolean

Dim SFO As SHFILEOPSTRUCT

Dim lRet As Long

Dim lflags As Long

lflags = FOF_ALLOWUNDO

If NoShowText Then lflags = lflags Or FOF_SIMPLEPROGRESS

If NoConfirm Then lflags = lflags Or FOF_NOCONFIRMATION

With SFO

.wFunc = FO_COPY

.pFrom = Src

.pTo = Dest

.fFlags = lflags

End With

lRet = SHFileOperation(SFO)

ShellFileCopy = (lRet = 0)

End Function

'--------------------------------------------------------------------------------

' 过程: ShellFileMove

' 描述: 移动文件,并显示“正在移动...”进度条对话框

' 返回: [Boolean] True为移动成功,False为移动失败

'

' 参数:

'     Src (String)                      要移动的源文件

'     Dest (String)                     要移动到的位置

'     hWnd (Long)                       父窗体的句柄(可选)

'     NoShowText (Boolean = False)      是否不显示移动的文件名

'     NoConfirm (Boolean = False)       是否不显示确认对话框

'

'--------------------------------------------------------------------------------

Public Function ShellFileMove(Src As String, Dest As String, _

Optional hWnd As Long, _

Optional NoShowText As Boolean = False, _

Optional NoConfirm As Boolean = False) As Boolean

Dim SFO As SHFILEOPSTRUCT

Dim lRet As Long

Dim lflags As Long

lflags = FOF_ALLOWUNDO

If NoShowText Then lflags = lflags Or FOF_SIMPLEPROGRESS

If NoConfirm Then lflags = lflags Or FOF_NOCONFIRMATION

With SFO

.wFunc = FO_MOVE

.pFrom = Src

.pTo = Dest

.fFlags = lflags

End With

lRet = SHFileOperation(SFO)

ShellFileMove = (lRet = 0)

End Function

----

21_460.gif 

★★★★★痞客★★★★★

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值