作者JediDotOrg (Jedi.org)
站内EzHotKey
标题Re: [AHK-] 把一些功能加入关机程序
时间Sun Aug 8 13:28:33 2010
※ 引述《dsefkn (好喔)》之铭言:
:
※ 发信站: 批踢踢实业坊(ptt.cc)
: ◆ From: 122.116.234.75
: 推 JediDotOrg:你都看到关键字「OnExit」了,很好查吧: 08/08 09:40
: → JediDotOrg:autohotkey.com/docs/commands/OnMessage.htm#shutdown 08/08 09:41
: 推 JediDotOrg:http://www.autohotkey.com/docs/commands/OnExit.htm 08/08 09:45
: → JediDotOrg:两种方法都可以用。 08/08 09:45
: 推 MikageLin:你可以用楼上讲的OnExit参数,在关机前,Autohotkey会先 08/08 09:57
: → MikageLin:关闭,触发OnExit参数,此时可以写入静音的code来执行 08/08 09:59
: → dsefkn:谢谢楼上两位大大 08/08 10:13
: → dsefkn:但是我试过拿example放入我script,但是我按关机 08/08 10:14
: → dsefkn:就真的直接关机了,并没有跳出小视窗问你要不要关机 08/08 10:15
: → dsefkn:(example都是会跳出视窗寻问的),所以不知道为什麽不行 08/08 10:16
: → dsefkn:例如我直接把下面的example加入,就没反应 08/08 10:17
麻烦抄范例之前,先弄清楚范例在做些什麽事 @@"
: → dsefkn:#Persistent 08/08 10:17
: → dsefkn:OnExit, ExitSub 08/08 10:18
: → dsefkn:return 08/08 10:18
: → dsefkn:ExitSub: 08/08 10:18
: → dsefkn:if A_ExitReason not in Logoff,Shutdown 08/08 10:18
这里的意思是,如果结束这个脚本的原因「不是」登出或关机的话,才做以下的事
: → dsefkn:{ MsgBox, 4, , Are you sure you want to exit? 08/08 10:19
: → dsefkn:IfMsgBox, No 08/08 10:19
: → dsefkn:return } 08/08 10:20
: → dsefkn:ExitApp 08/08 10:20
这个范例,在按关机的情况下,本来就不应该会跳出小视窗,所以你没看到小视窗,
乃是非常正确而合理的事。
如果你需要能「中断」关机程序的话,就必须用 OnMessage 那一个方法,
如果你只是要在关机前做点什麽的话,就用 OnExit 就可以了,即把那段改成:
if A_ExitReason in Logoff,Shutdown
{
; do something.
}
如果你根本不需要判断结束脚本的原因,不管为什麽脚本会关闭,
只要在脚本结束前都去设静音的话,直接写成:
OnExit, ExitSub
return
ExitSub:
; do something.
ExitApp
这样也可以。
: → windwofswold:gpedit设定关机前执行的指令?XD 08/08 11:27
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.126.224.29
※ 编辑: JediDotOrg 来自: 59.126.224.29 (08/08 13:33)
1F:推 qaed:专业给推!! 08/08 15:17
2F:推 arj32:清楚明白 08/08 18:14
3F:推 dsefkn:谢谢大大 08/09 00:09