困惑:调用外部程序并杀掉外部程序的问题
用如下办法启动一个进程
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec( "C:\\Program Files\\ADSL拨号王\\HelloNet.exe ");
试图用下边代码序杀掉该进程
Thread.sleep(5000);
proc.destroy();
但是怎么也杀不掉该进程,后来发现,HelloNet.exe执行后,进程名字自动变为HNMainUI.EXE,不知道为什么会变,这样变了之后,我该怎么杀掉他?
(该问题用了另外一个比较笨的办法解决,
String command = "taskkill /f /im HNMainUI.EXE ";
Runtime.getRuntime().exec(command);
但是总觉不通用,非常死
)
还有一个问题,我同样的办法调用另外一个拨号程序,启动杀掉都可以,但是不能断掉网络,请问怎么解决?
希望各位高手给个较为详细的解答,分不够还可以加!先谢谢了
------解决方案--------------------拨号上网后在进程管理器里面杀掉拨号程序,看看网络断开吗?
有可能不只一个进程,而是很多个在提供网路支持。你要杀的是不是其他的进程
先找到该进程再说
------解决方案--------------------流氓软件最常采用的一招就是这样,把程序名变来变去。
------解决方案--------------------mark!
------解决方案--------------------用pskill调用它来删除
------解决方案--------------------用JAVA 去操作系统进程是种不明智的选择,肯定会受到束缚
------解决方案--------------------up