查看完整版本: [-- 基于AutoHotKey编写的软件自动安装脚本 --]

秋无痕论坛 -> 『软件使用交流区』 -> 基于AutoHotKey编写的软件自动安装脚本 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

风无忌 2009-08-23 22:10

给大家讲下如何用AutoHotKey这个软件来编写软件自动安装脚本:(以安装极品五笔为例)
1,下载Autohotkey软件,安装到电脑上,为了方便大家学习,顺便把汉化的程序和帮助文件给大家传上去。(见文章尾)
2,右键选择新建Autohotkey script文件,用下载到的编辑器打开.如图:


完整代码如下:(蓝色为程序自建)
;
; AutoHotkey Version: 1.x
; Language:       English
; Platform:       Win9x/NT
; Author:         A.N.Other <myemail@nowhere.com>
;
; Script Function:
;    Template script (you can customize this template by editing "ShellNew\Template.ahk" in your Windows folder)
;

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

Send,#d
Sleep,200
MouseMove,10,10
ToolTip,====================重要提示====================`n软件安装期间,不要操作键盘和鼠标,以免发生错误!`n若长时间未响应,请按Ctrl+Alt+Del解锁鼠标和键盘!`n欢迎大家联系交流!`n岚风(风无忌)制作软件自动安装脚本。`nQQ:545144121`n====================重要提示====================,10,10
BlockInput, On
Run,JDZW.exe
WinWait,ahk_class #32770,在安装“freeime 6.5标准版”之前,请阅读授权协议。
IfWinNotActive,ahk_class #32770,在安装“freeime 6.5标准版”之前,请阅读授权协议。,WinActivate,ahk_class #32770,在安装“freeime 6.5标准版”之前,请阅读授权协议。
WinWaitActive,ahk_class #32770,在安装“freeime 6.5标准版”之前,请阅读授权协议。
Sleep,300
Send,!i
Sleep,300
SendInput,D:\Program Files\freeime
Sleep,500
Send,!i
WinWait,ahk_class #32770,在开始菜单中建立极点程序组么?
IfWinNotActive,ahk_class #32770,在开始菜单中建立极点程序组么?,WinActivate,ahk_class #32770,在开始菜单中建立极点程序组么?
WinWaitActive,ahk_class #32770,在开始菜单中建立极点程序组么?
Sleep,300
Send,y
WinWait,ahk_class #32770,中文 (国际版) - 极点五笔安装成功!
IfWinNotActive,ahk_class #32770,中文 (国际版) - 极点五笔安装成功!,WinActivate,ahk_class #32770,中文 (国际版) - 极点五笔安装成功!
WinWaitActive,ahk_class #32770,中文 (国际版) - 极点五笔安装成功!
Sleep,300
Send,{enter}
BlockInput, Off
Exit

下面给大家一步一步的讲下:
(1)运行jdzw.exe(极品五笔安装程序),出现以下界面:

先介绍下前几行代码的意思:
Send,#d ;模拟键盘发送Win+D键,即最小化所有窗口,这样是为了防止出错
Sleep,200;延迟0.2秒
MouseMove,10,10;将鼠标移动到桌面的(10,10)处,为了美观
ToolTip,====================重要提示====================`n软件安装期间,不要操作键盘和鼠标,以免发生错误!`n若长时间未响应,请按Ctrl+Alt+Del解锁鼠标和键盘!`n欢迎大家联系交流!`n岚风(风无忌)制作软件自动安装脚本。`nQQ:545144121`n====================重要提示====================,10,10;提示窗口,注意这是一行,没有回车
BlockInput, On;阻断键盘和鼠标的输入,防止程序运行期间被误操作
要实现在AU中打开程序,可以用Run命令,即Run,JDZW.exe(这样写要求安装程序和脚本程序在相同文件夹下,不然要加上程序的路径)
为了等待安装窗口,加上WinWait,ahk_class #32770,在安装“freeime 6.5标准版”之前,请阅读授权协议。其中ahk_class #32770是程序安装窗口的TITLE,后面的是窗口的TEXT,这是为了等待安装窗口出现再执行下面的命令。
为了使程序安装窗口为工作窗口,要防止它未激活,利用一下代码实现:
IfWinNotActive,ahk_class #32770,在安装“freeime 6.5标准版”之前,请阅读授权协议。,WinActivate,ahk_class #32770,在安装“freeime 6.5标准版”之前,请阅读授权协议。
WinWaitActive,ahk_class #32770,在安装“freeime 6.5标准版”之前,请阅读授权协议。
其中Ifwinnotactive,,winactivate的意思是如果存在的窗口未激活则激活它,winwaitactive的意思是等待指定窗口被激活。(窗口的Title什么的可以通过程序自带的AU3_SPY工具得到)




为了保险,再延迟0.3秒,即Sleep,300
Send,!i;模拟键盘按下alt+i,即按下安装窗口的我接受按钮,进入下一步,
Sleep,300;延迟0.3秒,等待下个窗口出现
SendInput,D:\Program Files\freeime;模拟键盘输入字符串,即输入安装路径D:\Program Files\freeime
Sleep,500;延迟0.5秒 等待输入完成(这是为了保险,其实sendinput命令式瞬间完成的)
Send,!i;模拟键盘按下alt+i,即按下安装窗口的安装按钮,开始安装程序
WinWait,ahk_class #32770,在开始菜单中建立极点程序组么?;等待指定窗口出现
IfWinNotActive,ahk_class #32770,在开始菜单中建立极点程序组么?,WinActivate,ahk_class #32770,在开始菜单中建立极点程序组么?
WinWaitActive,ahk_class #32770,在开始菜单中建立极点程序组么?;等待并激活指定窗口Sleep,300;延迟00.3秒
Send,y;模拟键盘按下Y键同意
WinWait,ahk_class #32770,中文 (国际版) - 极点五笔安装成功!
IfWinNotActive,ahk_class #32770,中文 (国际版) - 极点五笔安装成功!,WinActivate,ahk_class #32770,中文 (国际版) - 极点五笔安装成功!
WinWaitActive,ahk_class #32770,中文 (国际版) - 极点五笔安装成功!;等待安装完成窗口出现并激活Sleep,300;延迟0.3秒
Send,{enter};发送回车键,完成安装
BlockInput, Off;激活键盘鼠标输入
Exit;退出脚本
好了程序代码写好了,打开AHK2EXE工具选择ICO图标,编译AK文件为EXE文件就完成了!是不是很简单呢?




涉及的工具下载;
Autohotkey安装文件:http://www.rayfile.com/files/3f22e933-8fe8-11de-981e-0014221b798a/提取码:3f22e933-8fe8-11de-981e-0014221b798a
Autohotkey汉化版(免安装):http://www.rayfile.com/files/3f573dcc-8fe8-11de-b65d-0014221b798a/提取码:3f573dcc-8fe8-11de-b65d-0014221b798a
其它的一些汉化的东东(覆盖到AU的安装目录就行):http://www.rayfile.com/files/3fc1e028-8fe8-11de-96df-0014221b798a/提取码:3fc1e028-8fe8-11de-96df-0014221b798a
http://www.rayfile.com/files/3f7b3b66-8fe8-11de-919f-0014221b798a/提取码:3f7b3b66-8fe8-11de-919f-0014221b798a
编辑器:http://www.rayfile.com/files/3f9c41b3-8fe8-11de-8293-0014221b798a/提取码:3f9c41b3-8fe8-11de-8293-0014221b798a

艾晴 2022-08-19 00:24
这种陈年老帖,不知道还没有找到。我需要这个编辑器,请问哪位大神知道


查看完整版本: [-- 基于AutoHotKey编写的软件自动安装脚本 --] [-- top --]



Powered by PHPWind v7.3.2 Code © 2003-08 PHPWind
Time 0.038287 second(s),query:4 Gzip enabled

You can contact us