我的计划的一部分工作是创建一个新的用户帐户,将其提升为管理员,然后运行该用户的程序。
为此,我将使用以下代码:
runas /user:hostname\AddedUserProfile /savecred program.exe
这有效,但有一个问题。要使用runas
命令,运行该程序的用户必须拥有密码。运行该命令后,它会询问您该用户的密码。我的程序应该在幕后运行,并且没有用户能够看到它(不用担心。我已经拥有无形启动程序的代码,因此 NOT 这里的问题)。我无法找到一种方法来自动在密码输入字段中输入文本(是的,我知道密码没有显示出来)。我已经尝试让程序回显密码,我甚至试图让它重新输出echo命令的输出到密码字段的输入中。
echo password | runas /user:hostname\AddedUserProfile /savecred program.exe
即使这样也行不通!它只是给了我一个错误:
RUNAS ERROR: Unable to run - taskmgr.exe
-2147467259: Unspecified error
我真的很想知道这一点。如果除了runas之外还有办法做到这一点,我很乐意知道!不过,我更喜欢使用runas
。
编辑:
似乎错误是由于密码输入错误造成的。但是,我无法弄清楚它为什么会错误输入它。如果我不使用/savecred
,那么我会收到一条错误消息,说明密码错误。
答案 0 :(得分:0)
使用如下管道方法自动输入密码:
echo PasswordHere | runas /user:hostname\AddedUserProfile /savecred program.exe
这意味着,它将键入" PasswordHere"当runas.exe需要用户输入时。我还没有测试过,所以你必须尝试一下。我总是用这个" pipe"访问我的FTP服务器的方法。