【问题标题】:IIS - creating new web site throws exceptionIIS - 创建新网站引发异常
【发布时间】:2011-12-09 22:15:29
【问题描述】:

运行以下代码:

DirectoryEntry w3svc = new DirectoryEntry("IIS://localhost/w3svc");
int siteId = GetUniqueSiteId(Path);
private string DEFAULT_WEB_SITE_PHYSICAL_PATH = System.IO.Path.GetPathRoot(Environment.SystemDirectory) + @"inetpub\wwwroot";

object[] newsite = new object[] { "Default Web Site", new object[] { ":80:" }, DEFAULT_WEB_SITE_PHYSICAL_PATH, siteId };

w3svc.Invoke("CreateNewSite", newsite);

抛出以下异常:

System.Reflection.TargetInvocationException:调用的目标已抛出异常。 ---> System.Runtime.InteropServices.COMException (0x800700B7):当该文件已存在时无法创建该文件。 (HRESULT 异常:0x800700B7)

我仅在“默认网站”不存在时才尝试运行此代码。只有在 Windows Server 2003 中运行时才会引发异常。 此外,当在每次失败后重试并休眠 1 秒的循环中运行此代码时,该代码最终会在 3 次重试后工作并创建默认网站。

有人知道是什么原因吗?

【问题讨论】:

    标签: c# iis windows-2003-webserver


    【解决方案1】:

    当“默认网站”存在时,您正在尝试创建“默认网站”。您说自己在网站不存在时可以正常工作....

    【讨论】:

    • 我不是这个意思。我已经编辑了问题以使其更清楚。 “我只在“默认网站”不存在时才尝试运行此代码。”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-27
    • 1970-01-01
    • 2012-09-27
    • 1970-01-01
    • 2011-08-19
    • 2010-10-19
    • 2014-03-26
    相关资源
    最近更新 更多