PowershellスクリプトをC#に変換する必要があります。
Powershellスクリプトは、Windows展開サービスのCOMオブジェクトにアクセスします。
$wdsObject = New-Object -ComObject WdsMgmt.WdsManager
$wdsServer = $wdsObject.getWdsServer("Localhost")
[...]
C#でこれらのCOMオブジェクトにアクセスすることは可能ですか?
Visual C#で対応するCOMオブジェクト参照が見つかりませんでした。System32からC#プロジェクトの参照として追加しようとしましwdsmgmt.dll
たが、機能しませんでした。そうでなければ、私はかなり困惑しています。
編集:
コメント1への回答: C#からCOMオブジェクトにアクセスするための最良の方法
問題のCOMオブジェクトはリファレンスにリストされていません。私はそれを見逃さないようにリストを約5回調べました。そのCOMオブジェクトをC#のCOM参照リストに表示する方法はありますか?
コメント2への回答(機能しなかったもの):wdsmgmt.dllを追加しようとすると、次のエラーが表示されます。
Please make sure the file is accessible, and that it is a valid assembly or COM component.
このファイルにはアクセスできますが、C#から見ると有効なCOMコンポーネントではないようです。
レジストリでWdsMgmtを検索すると、COMオブジェクトが少なくとも何らかの形で存在していることがわかります。
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{CD583E47-B079-4025-A799-5F951D016D3E}
多分言い換えられた質問は次のようになります:
Powershellで名前がわかっている場合、COMオブジェクト参照をC#に追加するにはどうすればよいですか?