1 週間解決しようとしていた問題について助けが必要です。
Office365 環境からユーザーのリストを返す PowerShell スクリプトがあります。
PowerShell コンソール (自分のマシン) からスクリプトを実行すると、スクリプトは予期したデータを返します。サーバー (W2008 R2 SP1) PowerShell コンソールからスクリプトを実行すると、スクリプトは予期したデータを返します。自分のマシンで (スクリプトが実行された場所から) C# WebService コードをデバッグすると、srcipt は期待されるデータを返します。
問題: サーバーにホストされている WebService を呼び出すと、スクリプトは何も返しません。
コード:
RunspaceConfiguration runspcConfig = RunspaceConfiguration.Create();
Runspace run = RunspaceFactory.CreateRunspace(runspcConfig);
run.ApartmentState = System.Threading.ApartmentState.STA;
run.ThreadOptions = PSThreadOptions.UseCurrentThread;
run.Open();
Pipeline pipeline = run.CreatePipeline();
Command cmd = new Command("PathScript.ps1");
cmd.Parameters.Add(new CommandParameter("DOMAIN", "domain.onmicrosoft.com"));
cmd.Parameters.Add(new CommandParameter("PRODUCT", "productReference"));
pipeline.Commands.Add(cmd);
Collection<PSObject> users=pipeline.Invoke();
最後にエラーが見つかりました: 'Microsoft.Online.Administration.Automation.ConnectMsolService' の型初期化子が例外をスローしました。
ユーザーとパスワードは正しく、IUSR と「ApplicationPool ユーザー」は管理者グループに含まれています。
何か案が?