qq82015930 发表于 2009-2-22 23:33:13

怎么调用系统复制对话框????

怎么调用系统复制对话框????选择复制到那里
就想在网上想在文件一样选择保存在什么地方



主要是需要保存到什么地方这个选项
谢谢几位的帮助,

[ 本帖最后由 qq82015930 于 2009-2-23 14:35 编辑 ]

pusofalse 发表于 2009-2-23 00:34:36

$tagSHFileOperation = "hwnd hwndOwner;uint wFunc;ptr From;ptr To;" & _
                        "dword Flags;int AnyOperationAborted;" & _
                        "hwnd NameMapping;ptr ProgressTitle"
$tFileOperation = DllStructCreate($tagSHFileOperation)

$sFrom = "C:\14th destination.rmvb"                ; 源文件
$From = DllStructCreate("wchar[" & StringLen($sFrom) + 2 & "]")
DllStructSetData($From, 1, $sFrom)
$pFrom = DllStructGetPtr($From)


$sTo = @ScriptDir                                ; 目的文件

$To = DllStructCreate("wchar[" & StringLen($sTo) + 2 & "]")
DllStructSetData($To, 1, $sTo)
$pTo = DllStructGetPtr($To)


DllStructSetData($tFileOperation, 1, 0)
DllStructSetData($tFileOperation, 2, 0x2) ; $fo_copy = 0x2
DllStructSetData($tFileOperation, "From", $pFrom)
DllStructSetData($tFileOperation, "To", $pTo)
DllStructSetData($tFileOperation, "Flags", 0x40) ; $fof_allowundo = 0x40

DllCall("shell32.dll", "int", "SHFileOperationW", _
                "ptr", DllStructGetPtr($tFileOperation))

qq82015930 发表于 2009-2-23 01:05:23

原帖由 pusofalse 于 2009-2-23 00:34 发表 http://www.autoitx.com/images/common/back.gif
$tagSHFileOperation = "hwnd hwndOwner;uint wFunc;ptr From;ptr To;" & _
                        "dword Flags;int AnyOperationAborted;" & _
                        "hwnd NameMapping;ptr ProgressTitle"
$tFileOperation = DllStructCreate($ ...


没有选择保存到什么地方,目标路径是死的
主要是需要保存到什么地方这个选项

pusofalse 发表于 2009-2-23 01:29:36

$sTo = FileSaveDialog("Save As", "", "*.*", 18)

sva2005 发表于 2009-2-23 01:59:12

楼上写的基本上没有什么问题了,但可能有些地方还不行,我试着运行了一下。报错了

我把代码稍稍改了一下。可以正常执行了

$sTo = FileSaveDialog("Save As", "d:", "所有文件(*.*)", 18)

其实AU3的帮助文件已经很全了。我觉得F1真的挺管用的

pusofalse 发表于 2009-2-23 02:33:41

回复 5# sva2005 的帖子

多谢指出错误,我粗心粗到家了~
页: [1]
查看完整版本: 怎么调用系统复制对话框????