我必须从需要管理权限的 java 程序运行批处理文件。我正在使用以下命令
runtime.getruntime().exec("runas /user:Admin \"C:\\Program Files\\test.bat\"");
但是当它被执行时,它会提示输入管理员帐户的密码。我怎样才能给它的密码。
我必须从需要管理权限的 java 程序运行批处理文件。我正在使用以下命令
runtime.getruntime().exec("runas /user:Admin \"C:\\Program Files\\test.bat\"");
但是当它被执行时,它会提示输入管理员帐户的密码。我怎样才能给它的密码。
您不能将密码通过管道传输到 runas,因为它从终端请求密码,而不是从标准输入。没有“sudo -s”的等价物。
试试这个
runtime.getruntime().exec("cmd /C echo YOUR_PASS | runas /user:Admin \"C:\Program Files\test.bat\"");
我小时候做过这个
echo Pa$$W0Rd | some_command_expects_it