Quakexg
驱动小牛
驱动小牛
  • 注册日期2001-11-21
  • 最后登录2012-02-29
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望56点
  • 贡献值0点
  • 好评度18点
  • 原创分0分
  • 专家分0分
阅读:1179回复:3

很奇怪的问题,谁见过

楼主#
更多 发布于:2004-08-31 11:51
修改IPNEW用来卸载协议驱动,修改FASTINST用来卸载网卡驱动。

双击卸载协议的EXE,再双击卸载网卡的EXE,能够正常卸载成功。

用ShellexecuteEx分别将2个程序执行,98SE下没有问题,能够正常执行协议和网卡驱动的卸载。

但是在ME下,有时能成功,有时执行以后机器基本没什么反应了(鼠标点哪都没反应),按CTL+ALT+DEL,过一会,发现2个卸载的程序都还在执行!(如果双击执行的话,很快就执行完毕的,且我在2个程序中间SLEEP了一会儿),要是把这2个程序强制关闭,则系统恢复响应,但是驱动却没有卸载。

不知道有谁遇到过类似的问题,或给个建议,谢谢。
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2004-08-31 14:13
试着等第一个执行完了在执行第2个

比如CreaeteProcess(1);WaitFor...(1);CreateProcess(2);
Quakexg
驱动小牛
驱动小牛
  • 注册日期2001-11-21
  • 最后登录2012-02-29
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望56点
  • 贡献值0点
  • 好评度18点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-08-31 15:46
我发现是在卸载协议驱动的时候停住了!!!停在的函数DiCallClassInstaller(DIF_REMOVER,lpdi);
真是麻烦,DDK的函数,例子里就是这么写的,这部分代码没有改过,参数也应该是对的,因为双击执行时没有问题,卸载是成功的,

怎么碰到这种问题!
Quakexg
驱动小牛
驱动小牛
  • 注册日期2001-11-21
  • 最后登录2012-02-29
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望56点
  • 贡献值0点
  • 好评度18点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-09-01 10:47
绕过去了!

不要用别的程序调用这个EXE,而把其他EXE的代码加到一个EXE中,然后执行这个EXE就能卸载了,这个ME做的真滥,98SE下都没有这个现象的!
游客

返回顶部