下面的代码用于向IIS站点添加网络标识:
public void AddBinding(String siteId, String ip, Int32 port, String domain)
{
DirectoryEntry site = new DirectoryEntry(String.Format("IIS://localhost/W3SVC/{0}", siteId));
PropertyValueCollection serverBindings = site.Properties["ServerBindings"];
String binding = String.Format("{0}:{1}:{2}", ip, port, domain);
if (!serverBindings.Contains(binding))
{
serverBindings.Add(headerStr);
site.CommitChanges();
}
}
参数说明:
siteId:网站ID,默认站点是1,对于非默认站点,通过查看站点日志文件名就可以知道
ip:网站使用的IP,如果为空,则表示为未分配
port:这个自然是TCP端口号啦
domain:主机头值
参考例子:
AddBinding("1", "", 80, "
www.hugaga.cn")
为默认站点添加一个
www.hugaga.cn的主机头,端口是默认的80.
需要注意的是,调用这个方法添加网络标识,并不能马上在“高级网络标识”中出现记录,大约需要两三秒的间隔才行。间隔过后,你会看现,它安详的出现了,如图:

该方法在Win2003,IIS6下测试通过。