3
我想使用.net Powershell SDK執行powershell。我有這個工作正常。 在我執行它之前,我想檢查腳本是否已經由我的代碼簽名證書籤名 - 這很容易從powershell本身使用Get-AuthenticodeSignature執行,但我希望在執行此腳本之前在代碼中執行此操作。如何檢查PowerShell腳本是否從託管API簽名?
解決方案:
Runspace runSpace = RunspaceFactory.CreateRunspace();
runSpace.Open();
Pipeline shell = runSpace.CreatePipeline();
shell.Commands.AddScript(String.Format("Get-AuthenticodeSignature '{0}'", Filename));
Signature sig = (shell.Invoke()[0]).BaseObject as Signature;
bool isValid = sig.Status == SignatureStatus.Valid;
足夠接近!添加解決方案,我的問題 – 2010-05-04 16:04:23
啊,我看你在PowerShell的v1.0(PowerShell對象是v2只) – x0n 2010-05-06 17:08:18