首页 > 解决方案 > 没有凭据对话框运行脚本的问题

问题描述

我正在尝试运行一个 powershell 脚本,该脚本创建一个计算机名并将该计算机放在 AD 中的正确 OU 中。唯一的问题是我需要输入凭据才能发生这种情况,但我想这样做而不必在 powershell 凭据对话框中输入凭据。

我使用了 System.Management.Automation.PSCredential,但这显然是给了我对话框。

$secpasswd = ConvertTo-SecureString 'xxxxxx' -AsPlainText -Force
$mycreds = New-Object System.Managemnet.Automation.PSCredential("xxxx", $secpasswd)

尝试使用上面的代码而不弹出对话框

新对象:找不到类型 [System.Managemnet.Automation.PSCredential]:验证是否已加载包含此类型的程序集。在 line:2 char:12 + $mycreds = New-Object System.Managemnet.Automation.PSCredential("xxxx ... +~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidType: (:) [New-Object], PSArgumentException + FullyQualifiedErrorId:TypeNotFound,Microsoft.PowerShell.Commands.NewObjectCommand

标签: powershellpowershell-ise

解决方案


看来您在代码中打错了:Managemnet应该是Management,如System.Management.Automation. 这就是你的错误被抛出的原因。

但是,没有必要使用 的完整定义PSCredential。请改用以下内容:

$secpasswd = ConvertTo-SecureString 'xxxxxx' -AsPlainText -Force
$mycreds = New-Object PSCredential("xxxx", $secpasswd)

这不显示对话框。


推荐阅读