我在我的笔记本电脑上本地使用了大量便携式应用程序,如果我在关闭Windows时将其中一些打开,则它不会正确关闭它们,某些应用程序不会保存其设置。我试图在autohotkey脚本中使用taskkill选项,该脚本将在Windows关闭时执行,并将关闭正确打开的便携式应用程序。
我正在使用这个脚本:
#SingleInstance, force
#Persistent
DllCall("kernel32.dll\SetProcessShutdownParameters", UInt, 0x4FF, UInt, 0)
OnExit , closepgs
return
closepgs:
If (A_ExitReason="Shutdown" or A_ExitReason="Logoff")
{
Run, taskkill.exe /F /IM uTorrent.exe
}
ExitApp`
但是当我关闭Windows时,我收到此taskkill.exe错误:
“应用程序未能正确初始化(0xc0000142)。单击”确定“终止应用程序”
如果我在脚本之外使用taskkill代码,那么它可以正常工作:
^!Home::
Run, taskkill.exe /F /IM uTorrent.exe
但如果我在脚本中使用它,我会收到taskkill.exe错误。
知道这个错误发生的原因吗?
我有Windows XP专业版SP3。
答案 0 :(得分:1)
使用Process, Close代替taskkill.exe
:
Process, Close, uTorrent.exe
从Windows Vista及更高版本开始,似乎不允许进程在关闭阶段生成新进程。快速网络搜索产生的唯一来源是this one 另外,使用本机功能而不是调用程序几乎总是更可取。特别是在使用AHK时,我建议始终寻找内置功能。</ p>