Board logo

标题: [其他] 批处理如何找出不同名的相同服务? [打印本页]

作者: yuan_53770    时间: 2011-4-26 01:15     标题: 批处理如何找出不同名的相同服务?

XT等软件都是说新旧版本不能混用,原因是因为驱动服务的问题。

所以想到了一个假设:

如果1111.sys2222.sys是相同的文件,只是名称不同。

现在先加载1111.sys并启动运行。这时如果你加载2222.sys,你会发现能加载成功却不能启动运行。

我想说的是:如果我们事先不知道1111.sys的存在,在加载2222.sys后发现2222.sys能加载但不能启动,我们如何得知是1111.sys影响了2222.sys,使其不能启动运行??



就是说当我们发现本来应该可以正常启动的服务无法启动时,如何找出影响它不能启动的服务来??
作者: 冷玉公子    时间: 2011-4-26 12:20

%ERRORLEVEL% 这个参数对你应该有帮助
研究一下 IF 语句的写法里面有详细介绍这个地方
正常情况下 如果你说的是Windows的系统服务的话
sc start 2222
Echo %ERRORLEVEL%
如果返回0就证明上面的命令执行成功了
所以就可以加上IF语句来判断了
if %ERRORLEVEL% == 0
作者: missll    时间: 2011-4-26 16:06

把 exe  和 XueTr.config  同时修改成一样的名字 就可以多个运行了。

加载后应该是找不到sys了  连它自己都不能找到.  所以 %ERRORLEVEL% 只能是 1 了。

具体没深入研究.
作者: hanyeguxing    时间: 2011-4-26 18:15

每一个 sc 命令运行完成后, sc 都会返回其数字信息,例如:
1056 重复启动
1060 服务不存在
详细说明,参考 windows 资源工具包中的 sc 的 dev.txt




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2