servermanagerを使用して新しいサーバーを作成したいときに問題が発生しました。
これが私のコードです
ServerManager sm = new ServerManager();
Site s = sm.Sites.Add("NEWSERVER", path, 80);
BindingCollection bindingCollection = s.Bindings;
bindingCollection.Clear();
Binding binding = s.Bindings.CreateElement("binding");
binding["protocol"] = "https";
binding["certificateHash"] = "thumprint value";
binding["certificateStoreName"] = "MY";
binding["bindingInformation"] = string.Format("{0}:{1}:{2}", "*", "443", "subdomain.url.com");
bindingCollection.Add(binding);
Binding binding2 = s.Bindings.CreateElement("binding");
binding2["protocol"] = "http";
binding2["bindingInformation"] = string.Format("{0}:{1}:{2}", "*", "80", "subdomain.url.com");
bindingCollection.Add(binding2);
s.ServerAutoStart = true;
ApplicationPool a = sm.ApplicationPools.Add("NEWSERVER");
a.ManagedRuntimeVersion = "v4.0";
s.ApplicationDefaults.ApplicationPoolName = "NEWSERVER";
sm.CommitChanges();
実行すると、サーバー+バインディングが作成されますが、次のエラーが発生します。
「アクセスが拒否されました。(HRESULTからの例外:0x80070005(E_ACCESSDENIED))」
これは、sm.CommitChnages()が実行されたときに発生します。
アクセスできないものがわかりません。何か案は?