Roh*_*wal 10 java command-line command-prompt
我正在开发一个小型关闭调度程序项目,我必须将计算机置于"Stand By"模式中.我正在使用的命令是
Runtime.getRuntime().exec("cmd /c Powrprof.dll,SetSuspendState ");
Run Code Online (Sandbox Code Playgroud)
此命令需要管理员权限,我不知道如何获取.在搜索以前的答案时,我发现我可以使用elevate.exeas
Runtime.getRuntime().exec("c:/elevate Rundll32.exe Powrprof.dll,SetSuspendState ");
Run Code Online (Sandbox Code Playgroud)
Elevate.exe正在完成任务,但是耗费了太多时间,即使软件变慢.有没有其他快速的方式?我正在使用Netbeans IDE.
The*_*bit 10
Runtime.getRuntime().exec("runas /profile /user:Administrator \"cmd.exe /c Powrprof.dll,SetSuspendState\"");
Run Code Online (Sandbox Code Playgroud)
另外请看看评论
你有几个选择
A.使用admin priv创建快捷方式.
快捷方式将运行 cmd /c Rundll32.exe Powrprof.dll,SetSuspendState
您的Java代码将运行快捷方式:
Runtime rt = Runtime.getRuntime();
rt.exec("cmd /c start \"\" \"myshortcut.lnk\"")
Run Code Online (Sandbox Code Playgroud)
右键单击快捷方式图标>属性>高级>以管理员身份运行
B.以管理员身份运行java进程
再次,创建一个快捷方式并设置为以管理员身份运行.生成的任何进程也将具有管理员权限.你的java代码将运行:
rt.exec("cmd /c Powrprof.dll,SetSuspendState")
Run Code Online (Sandbox Code Playgroud)
C.使用JNA直接调用SetSuspendState例程.Java进程将需要admin priv(如B),但您不必生成进程.如果你喜欢这个,我可以提供源代码.
D. 使用wizmo实用程序:wizmo quiet standby
小智 6
添加参数 /savecred
runas /profile /user:Administrator /savecred
Run Code Online (Sandbox Code Playgroud)
输入密码一次.在将来OS不会问你密码.
| 归档时间: |
|
| 查看次数: |
45723 次 |
| 最近记录: |