0

環境: Visual Studio 2008/SQL Server 2005

オペレーティング システム: Windows Server 2003

以下のコードを使用して、IIS で Web サイトを作成およびホストしています。初めて、Web サイトが正常に作成および削除されましたが、IIS 6.0 で Web サイトを再作成/ホストしているときに、次の行にエラーがスローされます。

object websiteId = (object)w3svc1.Invoke("CreateNewSite", newsite);

エラー:

Message = "呼び出しのターゲットによって例外がスローされました。"

内部例外: InnerException = RPC サーバーを利用できません。(HRESULT からの例外: 0x800706BA)

[System.Reflection.TargetInvocationException] = {"呼び出しのターゲットによって例外がスローされました。"}

DirectoryEntry w3svc1 = new DirectoryEntry("IIS://localhost/W3SVC");

//Create a website object array
object[] newsite = new object[] {
    "TelnetProbeService",
    new object[] { "*:90:" },
    "c:\Test"
};

//invoke IIsWebService.CreateNewSite
object websiteId = (object)w3svc1.Invoke("CreateNewSite", newsite);

w3svc1.Properties["ServerAutoStart"][0] = true;
w3svc1.Properties["AuthNTLM"][0] = true;
w3svc1.Properties["AccessScript"][0] = true;
w3svc1.Properties["AccessFlags"][0] = 513;
w3svc1.Properties["AuthAnonymous"][0] = true;
w3svc1.Properties["AccessRead"][0] = true;
w3svc1.Properties["AccessWrite"][0] = false;
w3svc1.Properties["AccessScript"][0] = true;
w3svc1.Properties["AppPoolId"].Value = @"DefaultAppPool";
w3svc1.CommitChanges();

以下のコードを使用して、IIS で Web サイトを削除しています。

DirectoryEntry w3svc = new DirectoryEntry(
    "IIS://localhost/W3SVC",
    "SYNAPSE\rcatsadmin",
    "Global@123",
    AuthenticationTypes.Anonymous);

foreach (DirectoryEntry server in w3svc.Children)
{
  if (server.SchemaClassName == "IIsWebServer")
  {
    if (server.Properties["ServerComment"][0].ToString() == "TelnetProbeService")
    {
      server.DeleteTree();
      server.CommitChanges(); //THROWING ERROR
    }
  }
}

また、マシンの管理者権限も持っています。IIS 6.0 で Web サイトの削除と再作成/ホスティングの間に msi を実行しています。

4

0 に答える 0