![](/img/trans.png)
[英]When programmatically creating a new IIS web site, how can I add it to an existing application pool?
[英]IIS - creating new web site throws exception
运行以下代码:
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次重新绑定后终于可以正常工作,并创建了默认网站。
有人知道是什么原因吗?
当“默认网站”存在时,您正在尝试创建“默认网站”。 您说自己不存在该网站时效果很好。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.