2
내 목표는 원격 서버에서 웹 사이트 이름 목록을 얻는 것입니다. 하지만 예외가 발생합니다 :어떤 포트가 DirectoryEntry에서 사용됩니까?
는 코드입니다.RPC 서버를 사용할 수 없습니다.
public List<string> GetWebSites(string serverIP) { List<string> names = new List<string>(); DirectoryEntry Services = new DirectoryEntry(string.Format("IIS://{0}/W3SVC", serverIP)); Services.Username = "user name"; Services.Password = "password"; IEnumerator ie = Services.Children.GetEnumerator(); DirectoryEntry Server = null; while (ie.MoveNext()) { Server = (DirectoryEntry)ie.Current; if (Server.SchemaClassName == "IIsWebServer") { names.Add(Server.Properties["ServerComment"][0].ToString()); } } return names; }
이 방화벽가 컴퓨터에 꺼져있을 때, 잘 작동 : 여기
내가 알아야 할 것은 DirectoryEntry에서 어떤 포트를 사용합니까? 또는 방화벽을 끄지 않고 웹 사이트 이름을 얻는 다른 방법이 있습니까?
넓은 범위의 포트를 사용합니다. 특정 포트 나 더 작은 범위로 강제해야하는 경우 [여기] (http://support.microsoft.com/kb/154596)를보십시오. 내가 잘못 본 것이 아니라면 UDP 389도 필요합니다. – vcsjones