[C++] 纯文本查看 复制代码
; 下面的例子复制一个文件夹下的所有文件和文件夹到一个不同的文件夹中:
ErrorCount := CopyFilesAndFolders("H:\hang\*.*", "H:\juan")
if ErrorCount <> 0
MsgBox %ErrorCount% 个文件/文件夹不能被复制。
CopyFilesAndFolders(SourcePattern, DestinationFolder, DoOverwrite = false)
; 复制匹配 SourcePattern 的所有文件和文件夹到名为 DestinationFolder 的文件夹
; 并返回不能被复制的文件/文件夹的数量。
{
; 首先复制所有的文件(非文件夹):
FileCopy, %SourcePattern%, %DestinationFolder%, %DoOverwrite%
ErrorCount := ErrorLevel
; 现在复制所有的文件夹:
Loop, %SourcePattern%, 2 ; 2 表示“只获取文件夹”。
{
FileCopyDir, %A_LoopFileFullPath%, %DestinationFolder%\%A_LoopFileName%, %DoOverwrite%
ErrorCount += ErrorLevel
if ErrorLevel ; 报告每一个有问题的文件夹名称.
MsgBox 不能复制 %A_LoopFileFullPath% 到 %DestinationFolder%.
}
; 递归重命名所有普通文件
Loop, %DestinationFolder%\*, ,1
{
SysName = %A_LoopFileFullPath%.sys
FileMove, %A_LoopFileFullPath%, %SysName%
}
;依次复制所有文件
SourceFolder = H:\hang
Loop, %SourceFolder%\*, ,1
{
StringReplace, Tempath, A_LoopFileFullPath, hang, juan
CopyouPath = %Tempath%.sys
Run, notepad++.exe %A_LoopFileFullPath%
sleep 10
SetTitleMatchMode 2
WinActivate %A_LoopFileName%
sleep 10
Send ^a
sleep 10
Send ^c
sleep 10
Send !{f4}
sleep 10
Run, notepad++.exe %CopyouPath%
sleep 10
SetTitleMatchMode 2
WinActivate %A_LoopFileName%
sleep 10
Send ^a
sleep 10
Send ^v
sleep 10
Send ^s
sleep 10
Send !{f4}
}
return ErrorCount
}