2016-06-09 48 views
1

我試圖找出使用C#如果MSOnline PowerShell模塊在OS上可用如何檢測MSOnline PowerShell模塊是否可用 - 通過C#

從第一眼看 - 沒什麼困難。我們可以從C#調用PowerShell方法。但由於某些原因,我嘗試使用的所有代碼片段都無法使用MSOnline模塊獲得結果。

例如我們使用方法http://www.codeproject.com/Articles/18229/How-to-run-PowerShell-scripts-from-C和傳遞命令,如:

獲取-模塊-ListAvailable -Name(這裏是這個名字)

因此,如果我們運行的TLS模塊 - 它工作正常。在下面的圖片中,我們看到它在C#控制檯應用程序中的工作原理以及在PowerShell中的外觀。看起來很公平。

enter image description here

但一切都在變化,如果我們試圖查找MSOnline模塊:

enter image description here

正如我們看到的 - C#程序沒有給出結果,而PowerShell的本身就說明我們這個模塊是可用的。

我真的很困惑。我認爲這是與我的電腦,但我已經檢查了一些不同的,包括服務器2012 R2。結果是一樣的 - 即使我們使用與PS中完全相同的命令,也無法通過C#查找此模塊。

有沒有人看過這樣的問題?如果是 - 如果MSOnline PS模塊存在,可以通過C#檢測什麼解決方案。

謝謝。

回答

1

其實我發現我自己的問題的解決方案:

你需要確保你的程序和模塊有32或64位。

MSOnline正在運行x64,並且如果您的程序瞄準32位系統或具有任何CPU並在運行時運行32位 - 您將得到零結果。

就是這樣。

相關問題