2012-04-10 66 views
0

我做了一段時間的控制檯應用程序(在C#中),它執行一些PowerShell命令。 我使用遠程PowerShell連接到(交換)powershell。 但是當應用程序運行時;C#遠程(交換)powershell

RunspaceFactory.CreateRunspace(connectioninfo) 

我得到以下異常:

無法加載文件或程序集 'Microsoft.Management.Infrastructure,版本= 1.0.0.0,文化=中性公鑰= 31bf3856ad364e35' 或之一其依賴。該系統找不到指定的文件。

我唯一不知道的是爲什麼它在完美之前工作。我搜索了我的解決方案,無處可找到對該dll的引用。我也搜查了我的C#驅動器,它無處可尋。 我從2-3個月的備份中恢復了我的解決方案,併發生了同樣的錯誤。 有人可以給我一些指向什麼是錯的?

回答

1

發現問題。 顯然我的電腦有問題(我猜測安裝了VS11的測試版後)

無論如何,在VS2010安裝的不同機器上使用該項目後,它工作得很好。

+0

我卸載了Beta 11並修復(重新安裝)VS2010,並再次運行。我責備微軟。 – Kage 2012-05-05 22:07:49

0
  1. 檢查所有項目引用
  2. 檢查的app.config
  3. 看一看here

最新通報

看一看here

+0

我的參考文獻沒有那個特定的DLL,我的app.config不包含任何參考。在那個環節我無法得到任何幫助信息。整個DLL不存在於我的系統 – Kage 2012-04-10 12:29:29

+0

嘗試直接包含該DLL,它將起作用。 – 2012-04-10 12:32:12

+0

我在哪裏可以找到這個DLL?我試圖搜索互聯網,但無法找到它,搜索我所有的硬盤(目錄/微軟.Management.Infrastructure.dll),並沒有結果。 – Kage 2012-04-10 12:33:11

0

錯誤消息是誤導性的。

我得到了錯誤,因爲我使用了System.Management.Automation.dll版本3.0.0.0(這意味着PowerShell 3.0)的引用。

問題是,Exchange Server 2007/2010與PowerShell 3.0不兼容,因此您必須將引用綁定到System.Management.Automation.dll版本1.0.0.0(Windows PowerShell 2.0)。