【发布时间】:2013-09-06 10:13:19
【问题描述】:
如果知道管理员登录名和密码,如何以管理员身份运行exe文件?
我试过了
Runtime.getRuntime().exec("runas /profile /user:Administrator \"cmd.exe /c Powrprof.dll,SetSuspendState\"");
但它要求输入密码,我想用 Java 代码编写管理员登录名和密码。
【问题讨论】:
-
作为一般建议。阅读(并实施)所有When Runtime.exec() won't 的建议。然后忽略它引用
exec并使用ProcessBuilder构建Process。还要将String arg分解为String[] args,以说明本身包含空格的参数。 -
建议不要直接使用 Runtime#exec() 方法来调用进程。如果您不使用被调用进程创建的流,它可能会导致两个进程(JVM 和被调用进程)挂起。您可以使用具有实用方法的 apache commons exec 库来使用与进程关联的流。
标签: java windows exe runtime.exec administrator