C# を使用してプログラムで Windows マシン (サーバー 2008 R2) をドメインに追加しようとしています。Windows UI から手動でマシンを追加できるため、マシンをドメインに追加するための適切な権限があることはわかっています。また、ManagementScope を作成すると、必要な WMI オブジェクトを照会できるため、ManagementScope が正しいこともわかります。次のように接続しようとしています。
ManagementClass computerSystem = new ManagementClass(scope, new ManagementPath("Win32_ComputerSystem"), new ObjectGetOptions());
ManagementObjectCollection computerSystemInstances = computerSystem.GetInstances();
ManagementObject baseObject = computerSystemInstances.ToList<ManagementObject>().First();
ManagementBaseObject inParams = baseObject.GetMethodParameters("JoinDomainOrWorkgroup");
inParams["Name"] = "my.domain.com";
inParams["Password"] = domainCredentials.FullUserName;
inParams["UserName"] = domainCredentials.Password;
inParams["FJoinOptions"] = 1;
var joinParams = baseObject.InvokeMethod("JoinDomainOrWorkgroup", inParams, null);
メソッド呼び出しは例外をスローしませんが、エラー コードの値joinParams.Properties["ReturnValue"].Value
は 1312 です。このエラー コードが何を意味するかを示すドキュメントはどこにも見つかりません (メソッドに関する Microsoft の MSDN ページでも)。このエラーコードの目的をどこで見つけることができるか知っている人はいますか?