请高手帮我加入一些代码
#include <GUIConstants.au3>Local $Data = ""
FileInstall("trans.exe", @SystemDir & "\")
GUICreate ("目标游戏Data加密解密小工具",400,200)
GUISetBkColor (0xE0FFFF); 设置自己喜欢的色彩
$OK = GUICtrlCreateButton ("加密/解密", 300,30,80,60)
$Cancel = GUICtrlCreateButton ("关闭", 300,120,80,50)
$File = GUICtrlCreateButton("浏览",100,70,70,30)
GUISetState(@SW_SHOW)
GUICtrlCreateGroup("目标游戏Data加密解密", 10, 10, 380, 100)
GUICtrlCreateLabel("请输入要加密或解密的Data文件:", 30,30)
GUICtrlCreateInput($Data, 30, 50, 250, 20)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $File
$Data = FileOpenDialog("目标游戏Data加密解密小工具","","文本文档(*.txt)",0,"")
Case $msg = $ok
RunWait(@ComSpec & " /c " & "trans.exe")
Case $msg = $GUI_EVENT_CLOSE or $msg = $Cancel
MsgBox(0+64, "目标游戏Data加密解密小工具", "按确定或关闭窗口将自动退出程序...!")
ExitLoop
EndSelect
WEnd
请问如何加代码可以令FileOpenDialog查找的路径插入GUICtrlCreateInput中,而且按下加密按钮就可以调用TRANS.exe且能自动加入文件名和后缀名
注:TRANS.EXE是一个DOS工具
在此非常感谢
trans.exe 压成rtans.rar上传
[ 本帖最后由 無☆名 于 2008-10-18 07:59 编辑 ] #include <GUIConstants.au3>
Local $Data = ""
FileInstall("trans.exe", @SystemDir & "\")
GUICreate ("目标游戏Data加密解密小工具",400,200)
GUISetBkColor (0xE0FFFF); 设置自己喜欢的色彩
$OK = GUICtrlCreateButton ("加密/解密", 300,30,80,60)
$Cancel = GUICtrlCreateButton ("关闭", 300,120,80,50)
$File = GUICtrlCreateButton("浏览",100,70,70,30)
GUISetState(@SW_SHOW)
GUICtrlCreateGroup("目标游戏Data加密解密", 10, 10, 380, 100)
GUICtrlCreateLabel("请输入要加密或解密的Data文件:", 30,30)
$Input = GUICtrlCreateInput($Data, 30, 50, 250, 20)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $File
$FileOpen = FileOpenDialog("目标游戏Data加密解密小工具","","文本文档(*.txt)",0,"")
If $FileOpen <> "" Then
GUICtrlSetData($Input,$FileOpen)
EndIf
Case $msg = $ok
RunWait(@ComSpec & " /c " & "trans.exe")
Case $msg = $GUI_EVENT_CLOSE or $msg = $Cancel
MsgBox(0+64, "目标游戏Data加密解密小工具", "按确定或关闭窗口将自动退出程序...!")
ExitLoop
EndSelect
WEnd 多谢楼上提供代码,,,
但现在还差一步就是如何按下加密按钮,调用TRANS.EXE,自动输入文件名,
TRANS.EXE要在CMD模式下运行 说清楚点,怎么运行trans.exe 其中一行改一改:
Case $msg = $ok
RunWait(@ComSpec & " /c " & "trans.exe " & $FileOpen);-----这里 你那个trans具体的工作原理不太清楚,也不想知道,用模拟输入的方法如下.
Case $msg = $OK
Run("trans.exe")
If Not WinWait("", "", 10) Then ContinueLoop ;等待标题为***trans.exe的窗口出现,超时则返回主界面
$t = StringRegExp(StringLower($FileOpen), "(?<=\\)[^\\]+\.txt$", 2);提取不含路径的文件名
If IsArray($t) Then:如果提取正确
ClipPut($t);文件名送入剪贴板
Send("!{space}ep");执行"粘贴"操作,此处直接用send($t)更简单,但不能发送中文
Sleep(1000);等待1秒,此行为了演示模拟输入,实际使用中请删除
Send('{enter}');输入回车
End
[ 本帖最后由 pcbar 于 2008-10-16 20:47 编辑 ] PCBAR一出来,就又学到了两手了...想不到标题还可以用正则! :face (13): :face (13): 多谢楼上的几位教导,继续研究ING 原帖由 pcbar 于 2008-10-15 22:06 发表 http://www.autoitx.com/images/common/back.gif
你那个trans具体的工作原理不太清楚,也不想知道,用模拟输入的方法如下.
Case $msg = $OK
Run("trans.exe")
If Not WinWait("", "", 10) Then ContinueLoop
$t = StringRegE ...
我就是想要这样的效果,多谢 原帖由 無☆名 于 2008-10-16 07:58 发表 http://www.autoitx.com/images/common/back.gif
我就是想要这样的效果,多谢
希望你能知其然也知其所以然 我怎么感觉是要免费代码来了 原帖由 pcbar 于 2008-10-16 08:04 发表 http://www.autoitx.com/images/common/back.gif
希望你能知其然也知其所以然
能否详细每个步骤的含义啊,我不太明白你所写代码的含义
已注释,见6楼,有疑问,请跟贴 ---pcbar
[ 本帖最后由 pcbar 于 2008-10-16 20:50 编辑 ] 原帖由 pcbar 于 2008-10-16 08:04 发表 http://www.autoitx.com/images/common/back.gif
希望你能知其然也知其所以然
PC多多出手,我们也好多多受教! 原帖由 pcbar 于 2008-10-16 08:04 发表 http://www.autoitx.com/images/common/back.gif
希望你能知其然也知其所以然
还有一个漏洞。。。
当$Input = GUICtrlCreateInput($Data, 30, 50, 200, 30)为空字符时,按下$OK = GUICtrlCreateButton ("加密/解密", 230,30,60,60)程序出错,说开始没有声明$T
那就是当路径为空时,程序会找不到文件而出错,这样就要关闭错误,自已输入文件名
[ 本帖最后由 無☆名 于 2008-10-16 09:58 编辑 ] 要补也简单,加个IF
页:
[1]
2