找回密码
 加入
搜索
查看: 3392|回复: 19

请高手帮我加入一些代码

[复制链接]
发表于 2008-10-15 17:27:04 | 显示全部楼层 |阅读模式
#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 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2008-10-15 18:07:32 | 显示全部楼层
#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
 楼主| 发表于 2008-10-15 18:19:12 | 显示全部楼层
多谢楼上提供代码,,,
但现在还差一步就是如何按下加密按钮,调用TRANS.EXE,自动输入文件名,
TRANS.EXE要在CMD模式下运行
发表于 2008-10-15 19:00:42 | 显示全部楼层
说清楚点,怎么运行trans.exe
发表于 2008-10-15 21:40:48 | 显示全部楼层
其中一行改一改:

Case $msg = $ok
        RunWait(@ComSpec & " /c " & "trans.exe " & $FileOpen);-----这里
发表于 2008-10-15 22:06:38 | 显示全部楼层
你那个trans具体的工作原理不太清楚,也不想知道,用模拟输入的方法如下.
Case $msg = $OK
Run("trans.exe")
If Not WinWait("[REGEXPTITLE:.+trans\.exe]", "", 10) Then ContinueLoop ;等待标题为***trans.exe的窗口出现,超时则返回主界面
$t = StringRegExp(StringLower($FileOpen), "(?<=\\)[^\\]+\.txt$", 2);提取不含路径的文件名
If IsArray($t) Then:如果提取正确
ClipPut($t[0]);文件名送入剪贴板
Send("!{space}ep");执行"粘贴"操作,此处直接用send($t[0])更简单,但不能发送中文
Sleep(1000);等待1秒,此行为了演示模拟输入,实际使用中请删除
Send('{enter}');输入回车
End

[ 本帖最后由 pcbar 于 2008-10-16 20:47 编辑 ]
发表于 2008-10-15 22:26:36 | 显示全部楼层
PCBAR一出来,就又学到了两手了...想不到标题还可以用正则!
 楼主| 发表于 2008-10-16 07:55:13 | 显示全部楼层
多谢楼上的几位教导,继续研究ING
 楼主| 发表于 2008-10-16 07:58:38 | 显示全部楼层
原帖由 pcbar 于 2008-10-15 22:06 发表
你那个trans具体的工作原理不太清楚,也不想知道,用模拟输入的方法如下.
        Case $msg = $OK
                        Run("trans.exe")
                        If Not WinWait("[REGEXPTITLE:.+trans\.exe]", "", 10) Then ContinueLoop
                        $t = StringRegE ...

我就是想要这样的效果,多谢
发表于 2008-10-16 08:04:05 | 显示全部楼层
原帖由 無☆名 于 2008-10-16 07:58 发表

我就是想要这样的效果,多谢

希望你能知其然也知其所以然
发表于 2008-10-16 08:21:38 | 显示全部楼层
我怎么感觉是要免费代码来了
 楼主| 发表于 2008-10-16 08:22:51 | 显示全部楼层
原帖由 pcbar 于 2008-10-16 08:04 发表

希望你能知其然也知其所以然

能否详细每个步骤的含义啊,我不太明白你所写代码的含义

已注释,见6楼,有疑问,请跟贴 ---pcbar

[ 本帖最后由 pcbar 于 2008-10-16 20:50 编辑 ]
发表于 2008-10-16 09:28:15 | 显示全部楼层
原帖由 pcbar 于 2008-10-16 08:04 发表

希望你能知其然也知其所以然

PC多多出手,我们也好多多受教!
 楼主| 发表于 2008-10-16 09:39:02 | 显示全部楼层
原帖由 pcbar 于 2008-10-16 08:04 发表

希望你能知其然也知其所以然

还有一个漏洞。。。
当$Input = GUICtrlCreateInput($Data, 30, 50, 200, 30)为空字符时,按下$OK = GUICtrlCreateButton ("加密/解密", 230,30,60,60)程序出错,说开始没有声明$T

那就是当路径为空时,程序会找不到文件而出错,这样就要关闭错误,自已输入文件名

[ 本帖最后由 無☆名 于 2008-10-16 09:58 编辑 ]
发表于 2008-10-16 09:52:44 | 显示全部楼层
要补也简单,加个IF
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-18 20:55 , Processed in 0.086707 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表