我正在开发一个运行powershell脚本的WPF应用程序。
string scriptPath = "/script/myscript.ps1";
Runspace runspace = RunspaceFactory.CreateRunspace();
runspace.Open();
Pipeline pipeline = runspace.CreatePipeline();
pipeline.Commands.AddScript(scriptPath);
Collection<PSObject> results = pipeline.Invoke();
我添加了以下程序集。
C:\Program Files (x86)\Reference Assemblies\Microsoft\WindowsPowerShell\3.0\System.Management.Automation.dll
但是当程序运行后出现异常;
无法加载文件或程序集'System.Management.Automation,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一。强名称验证失败。 (来自HRESULT的异常:0x8013141A)“:”System.Management.Automation,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35“} **
当我搜索此错误时,我可以找到一些答案。但那些对我来说并不清楚。 请指教我。
答案 0 :(得分:9)
最后我能够解决我的问题。这就是我所做的;
打开我的 .csproj 文件
搜索System.Management.Automation参考。
将其替换为以下<Reference Include="System.Management.Automation" />
这些步骤解决了我的问题