使用 powershell 自动为 Sn.exe 输入密码
Enter password automatically for Sn.exe using powershell
我试图在每次 Azure Pipeline 运行s 时自动安装 pfx 文件,因为使用交互式进程代理时,文件似乎丢失了密码或无法导入。下面是我试图实现的 powershell 脚本,但收效甚微。我需要自动提供密码:
Set-Location "C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools"
Start-Process -FilePath "sn.exe" -ArgumentList "-NoExit","-d","$Container"
Start-Process -FilePath "sn.exe" -ArgumentList "-i $path $Container" -NoNewWindow -Wait
[System.Windows.Forms.SendKeys]::SendWait("$password")
当我 运行 脚本时,出现以下错误:
Start-Process : This command cannot be run due to the error: The
system cannot find the file specified. At
C:\PowerShellScript\CertReInstall.ps1:12 char:1
+ Start-Process -FilePath "sn.exe" -ArgumentList "-i $path $Container ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationException
+ FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand
虽然我想使用“Import-PfxCertificate”,但它似乎没有为安装提供容器名称的选项。
如有任何帮助,我们将不胜感激。
谢谢!
经过大量的反复试验,我终于弄清楚了哪条路径有问题。它实际上是在抱怨 -FilePath "sn.exe"
而不是参数列表中的 path
。即使 Set-Location
完成了它的工作,第二个 Start-Process
还是有问题。所以我将行更新如下:
Start-Process -FilePath "sn.exe" -ArgumentList "-i $path $Container" -NoNewWindow -Wait
这使找不到文件的错误消失了。
我试图在每次 Azure Pipeline 运行s 时自动安装 pfx 文件,因为使用交互式进程代理时,文件似乎丢失了密码或无法导入。下面是我试图实现的 powershell 脚本,但收效甚微。我需要自动提供密码:
Set-Location "C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools"
Start-Process -FilePath "sn.exe" -ArgumentList "-NoExit","-d","$Container"
Start-Process -FilePath "sn.exe" -ArgumentList "-i $path $Container" -NoNewWindow -Wait
[System.Windows.Forms.SendKeys]::SendWait("$password")
当我 运行 脚本时,出现以下错误:
Start-Process : This command cannot be run due to the error: The system cannot find the file specified. At C:\PowerShellScript\CertReInstall.ps1:12 char:1 + Start-Process -FilePath "sn.exe" -ArgumentList "-i $path $Container ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationException + FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand
虽然我想使用“Import-PfxCertificate”,但它似乎没有为安装提供容器名称的选项。
如有任何帮助,我们将不胜感激。 谢谢!
经过大量的反复试验,我终于弄清楚了哪条路径有问题。它实际上是在抱怨 -FilePath "sn.exe"
而不是参数列表中的 path
。即使 Set-Location
完成了它的工作,第二个 Start-Process
还是有问题。所以我将行更新如下:
Start-Process -FilePath "sn.exe" -ArgumentList "-i $path $Container" -NoNewWindow -Wait
这使找不到文件的错误消失了。