有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用java代码更改计算机密码

我应用了以下代码来更改我的计算机密码,但无效:

public static void main(String[] args) throws IOException {    
    Runtime.getRuntime().exec("net user admin password");
}

作为管理员,我在命令提示符下应用了这个“net user admin密码”,它成功了。 我想我需要管理员权限才能成功运行此代码。请给我一步一步详细的解决方案,因为我不太好。提前谢谢


共 (2) 个答案

  1. # 1 楼答案

    根据对“java-running executable with admin privilege”的回答,解决方案是使用runas命令以提升的权限运行net命令;i、 例如:

    Runtime.getRuntime().exec("runas net user admin password");
    

    微软关于runas的文档是here

    这应该只能通过管理员用户帐户进行

  2. # 2 楼答案

    引用microsoft documents

    To change a user's password at the command prompt, log on as an administrator and type: net user user_name * /domain

    所以你应该以管理员身份运行你的程序,或者已经以管理员身份登录

    请注意,执行这个非常关键的命令对用户类型有很高的限制,因为您可以在不键入旧密码的情况下更改(或设置)密码

    Non-administrators receive a "System error 5 has occurred. Access is denied" error message when they attempt to change the password.

    注意:正如Stephen C.所说,您可以使用runas而不是run运行命令,但它需要输入密码(但不是在命令行中),因此我建议您运行批处理文件,并在其中运行提升的快捷方式,有关更多详细信息,请参阅this