我在后台服务程序中用winexec()执行了一个自己创建的批处理,批处理中又有2个DOS命令。
这个后台程序会定时用winexec()函数执行批处理,随着定时执行次数越来越多,任务管理器中的2个DOS命令也会越来越多,直到把内存消耗完死机为主。
怎么样才能杀死任务管理器中的这2个DOS命令进程 ?

解决方案 »

  1.   

    有个简单的方法,你的批命令假设运行了a.exe和b.exe,你可以在运行A B之前,要批命令中加入
    taskkill /f /im a.exe
    taskkill /f /im b.exe
    然后再启动a.exe,b.exe这样就可以保护进程中只有一个a.exe和b.exe还有办法就是把a.exe,b.exe改成控制台应用程序,运行完后让它们自动退出,而不要使用windows程序,因为windows程序是要接到wm_quit才会退出的
      

  2.   

    最简单有效的办法:
    在你的 bat 最后一行加上
    EXIT
    即可。