我已经搜索过,但没有找到任何答案。
任务是使用 Powershell ps1 注册一个 dll,然后是其他行脚本。我不想被对话框打断,所以添加了 /s 参数。但是现在不管成功还是失败,结果信息都被忽略了。
我希望在控制台中显示结果。但是如何?

最佳答案

使用 regsvr32.exe /s 启动 Start-Process -PassThru 并检查 ExitCode 属性:

$regsvrp = Start-Process regsvr32.exe -ArgumentList "/s C:\path\to\your.dll" -PassThru
$regsvrp.WaitForExit(5000) # Wait (up to) 5 seconds
if($regsvrp.ExitCode -ne 0)
{
    Write-Warning "regsvr32 exited with error $($regsvrp.ExitCode)"
}

关于Powershell 在控制台而不是对话框中显示 Regsvr32 结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37110533/

10-11 22:49