Java 当发送命令的程序不是admin时,如何强制关闭以admin身份运行的进程?

Java 当发送命令的程序不是admin时,如何强制关闭以admin身份运行的进程?,java,windows,command-line,admin,command-prompt,Java,Windows,Command Line,Admin,Command Prompt,出于测试和安全目的,我试图制作一个Java程序,强制关闭某些进程。我正在用“taskmgr.exe”进程和“cmd.exe”进程测试它 无论怎样,它都可以在taskmgr.exe上正常工作,但只有在命令提示符未以管理员身份运行时,它才能在cmd.exe上工作。我正在使用taskkill/F在我的代码中关闭这些: String line; String pidInfo = ""; while (true) { Process p = null; tr

出于测试和安全目的,我试图制作一个Java程序,强制关闭某些进程。我正在用“taskmgr.exe”进程和“cmd.exe”进程测试它

无论怎样,它都可以在taskmgr.exe上正常工作,但只有在命令提示符未以管理员身份运行时,它才能在cmd.exe上工作。我正在使用
taskkill/F
在我的代码中关闭这些:

String line;
    String pidInfo = "";
    while (true) {
        Process p = null;
        try {
            p = Runtime.getRuntime().exec(
                    System.getenv("windir") + "\\system32\\"
                            + "tasklist.exe");
        } catch (IOException e1) {
            e1.printStackTrace();
        }
        BufferedReader input = new BufferedReader(new InputStreamReader(
                p.getInputStream()));
        try {
            while ((line = input.readLine()) != null) {
                pidInfo += line;
            }
        } catch (IOException e1) {
            e1.printStackTrace();
        }

        try {
            input.close();
        } catch (IOException e1) {
            e1.printStackTrace();
        }

        if (pidInfo.contains("taskmgr.exe")) {
            Runtime rt = Runtime.getRuntime();
            try {
                rt.exec("taskkill /F /T /IM taskmgr.exe");
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        if(pidInfo.contains("cmd.exe")) {
            Runtime rt = Runtime.getRuntime();
            try {
                rt.exec("taskkill /F /T /IM cmd.exe");
            } catch(IOException ex) {
                ex.printStackTrace();
            }
        }
    }

这一切都很好。但是如何修改代码,使其也可以强制管理员命令提示符退出?出于我的目的,我不能以管理员的身份运行Java程序。这可能吗?

长话短说,你在问一个非管理员进程是否可以杀死一个管理员进程

那是不可能的

因此,代码中的任何更改都无法完成它


(至少在没有一些m4d h4x0r ski11z的情况下是这样,我们不允许在这里讨论。)

长话短说,您在问非管理进程是否可以杀死管理进程

那是不可能的

因此,代码中的任何更改都无法完成它


(至少在没有一些m4d h4x0r ski11z的情况下是这样,我们不允许在这里谈论这些。)

实际上,您可以在这里谈论黑客。我仍然使用的少数几个好理由之一是:我就是这么想的。那好吧。谢谢你的回答:)@Qix当然可以。我在开玩笑。(顺便说一句,这个名字很酷;我以前玩过那个街机游戏。)@Qix好吧,如果允许我们谈论它,那么我不妨陈述一下我的程序:它只是用一个关闭按钮简单地说“你能关闭程序吗?”。该按钮只打开第一个窗口的另一个窗口。与Windows关闭按钮相同。它关闭任务管理器,这样人们就不能关闭它,但我的不是病毒,因为它不会造成伤害,你可以关闭它。我喜欢电脑:)事实上,你可以在这里谈论黑客。我仍然使用的少数几个好理由之一是:我就是这么想的。那好吧。谢谢你的回答:)@Qix当然可以。我在开玩笑。(顺便说一句,这个名字很酷;我以前玩过那个街机游戏。)@Qix好吧,如果允许我们谈论它,那么我不妨陈述一下我的程序:它只是用一个关闭按钮简单地说“你能关闭程序吗?”。该按钮只打开第一个窗口的另一个窗口。与Windows关闭按钮相同。它关闭任务管理器,这样人们就不能关闭它,但我的不是病毒,因为它不会造成伤害,你可以关闭它。我喜欢电脑:)