有时需要知道用户电脑上装没有装IIS服务,以及IIS服务虚拟目录的物理路径。下面这个方法实现此功能,如果抛出异常则是没有装IIS服务,否则返回用户电脑上的虚拟目录物理路径绝对地址。 /// <summary> /// 获取虚拟目录的物理路径 /// </summary> /// <returns></returns> public string GetWebVirtualDirectoryPath() { try { DirectoryEntry root = new DirectoryEntry("IIS://localhost/W3SVC");//参数只能这样写 DirectoryEntry site = (DirectoryEntry)root.Invoke("GetObject", "IIsWebServer", 1);//参数只能这样写 DirectoryEntry siteVDir = site.Children.Find("Root", "IISWebVirtualDir");//参数只能这样写 return siteVDir.Properties["Path"].Value.ToString(); } catch (Exception ex) { throw ex; } }