C#操作IIS方法集合

2019-12-26 13:27:16王冬梅
  • newpool.Properties["AppPoolIdentityType"][0] = "4"; //4  newpool.Properties["ManagedPipelineMode"][0] = "0"; //0:集成模式 1:经典模式 
  • newpool.CommitChanges();  siteVDir.Properties["AppPoolId"][0] = webSiteName; 
  • }   
  • siteVDir.CommitChanges();  site.CommitChanges(); 
  • return siteID;  } 
  •   /// <summary> 
  • /// 得到网站的物理路径  /// </summary> 
  • /// <param name="rootEntry">网站节点</param>  /// <returns></returns> 
  • public static string GetWebsitePhysicalPath(DirectoryEntry rootEntry)  { 
  • string physicalPath = "";  foreach (DirectoryEntry childEntry in rootEntry.Children) 
  • {  if ((childEntry.SchemaClassName == "IIsWebVirtualDir") && (childEntry.Name.ToLower() == "root")) 
  • {  if (childEntry.Properties["Path"].Value != null) 
  • {  physicalPath = childEntry.Properties["Path"].Value.ToString(); 
  • }  else 
  • {  physicalPath = ""; 
  • }  } 
  • }  return physicalPath; 
  • }   
  • /// <summary>  /// 获取站点名 
  • /// </summary>  public static List<IISInfo> GetServerBindings() 
  • {  List<IISInfo> iisList = new List<IISInfo>(); 
  • string entPath = String.Format("IIS://{0}/w3svc", HostName);  DirectoryEntry ent = new DirectoryEntry(entPath); 
  • foreach (DirectoryEntry child in ent.Children)  { 
  • if (child.SchemaClassName.Equals("IIsWebServer", StringComparison.OrdinalIgnoreCase))  { 
  • if (child.Properties["ServerBindings"].Value != null)  { 
  • object objectArr = child.Properties["ServerBindings"].Value;  string serverBindingStr = string.Empty; 
  • if (IsArray(objectArr))//如果有多个绑定站点时  {