各位大侠,小弟学java一段时间拉,最近知道拉xp系统下有shutdown这个命令,可以强制关机,并能够限定时间。因而突发奇想,想做一个java控制电脑关机的程序。正好最近和高手交流,并了解Runtime类的一些用法。因此在两天的编码,查资料,不停测试下,有点小成果,但是该程序仍然存在bug。
就是不能使用任务管理器强制结束,如果强制结束那么将在xp自带的关机程序调出以后,无法终止关机行为,这对某些人来说可能会是灾难啊。除非你从.\system2\目录找到该.exe程序,手动终止强制关机行为。针对这个问题我有一个很勉强的方法:
1,不使用随即生成更改shutdown文件名后的名字。而是使用一个固定的名字,程序中name = (int) (Math.random() * 10) + "shut";改为name = "shut";
2,可以在catch{}里面恢复正常xp系统的shutdown名字,关闭当前窗体,并提示一些信息,然后重新启动程序。
但是这种方法却降低拉程序的隐秘性。和可破解性(虽然很容易破解,且破解方法很多,而且这个程序很简单)但是我还是尽量考虑程序的隐秘性而采取了随即生成名字的方法。希望各位帮忙想想可解决的方法,我真诚的请教。