盆盆罐罐

上海邦麦信息科技有限公司旗下子网站;POS系统、计算机技术资料搜集

延迟启动应用程序的方法

文章目录
[隐藏]

这里以延迟启动版本为V2016.04.28及之前的“科脉-通讯助手”程序为例。

测试环境:Windows XP+SQL 2000以及Windows 2012 64位+SQL 2005 64位

先说一下“科脉-通讯助手”程序

目前的“科脉-通讯助手”程序(版本为V2016.04.28及之前)其实是通过其更新程序(Upgrade.exe)来启动的。勾选“随开机启动”后,开机进入桌面时其更新程序(Upgrade.exe)启动必定报错退出,最后导致“科脉-通讯助手”程序无法启动。

KMMicroMsgAssistant_StartUP

先禁止助手更新程序自动启动,然后手动将“科脉-通讯助手”程序的快捷方式放到系统启动目录里,开机是能正常启动助手的(Windows XP以及Windows 2012 64位下测试通过),但这样就不能自动检测更新。所以我们首先将助手更新程序禁用自启动(“科脉-通讯助手”程序取消勾选“随开机启动”+上图Upgrade.exe取消勾选),然后将助手更新程序做延迟启动处理。

这里只是作一个程序延迟启动方法的探讨,项目实施的时候尽量使用软件厂家程序或者等待软件厂家的更新和优化。

延迟启动应用程序的方法

下面以版本为V2016.04.28及之前的“科脉-通讯助手”为例。

方法1:批处理方式

文本文件里写好启动代码,将这个文件命名为“KMMicroMsgAssistant.bat”批处理文件,并将此文件放在“科脉-通讯助手”的安装目录下,新建快捷方式将其放到系统启动目录

批处理代码如下:

@echo off
if "%1" == "h" goto begin 
mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&exit 
:begin
ping 127.0.0.1 -n 20>nul 
start "" "Upgrade.exe"
exit

说明:这里利用ping来延迟,20表示ping 20次(大概20秒)

不完美之处:系统启动运行此批处理文件时,会有一个黑框闪一下。而且放到系统启动目录时安全软件会有“风险提示”。

方法2:VBS方式

文本文件里写好启动代码,将这个文件命名为“KMMicroMsgAssistant.vbs”VBS文件,并将此文件放在“科脉-通讯助手”的安装目录下,新建快捷方式将其放到系统启动目录

VBS代码如下:

Dim delayer
Set delayer = CreateObject("WScript.Shell")
WScript.sleep 20000
delayer.Run "Upgrade.exe", 0, FALSE
Set delayer = Nothing
WScript.quit

说明:WScript.sleep语句后面的20000表示延迟时间,单位毫秒

不完美之处:系统启动运行此VBS文件时,不会有一个黑框闪一下了。但放到系统启动目录时安全软件仍然会有“风险提示”。

参考链接

对本文发表评论





0 + 1 = ?

注意:
1、请勿单纯发表顶啊、打酱油之类无任何意义的评论,否则将被视为spam!谢谢合作!
2、但欢迎你留下对本文的看法或技术上的任何疑问,我会及时回复你。