Моя цель - получить список имен веб-сайтов с удаленного сервера. Но я получаю исключение:
Сервер 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?
или есть какой-то другой способ получить имена веб-сайтов, не отключая брандмауэр?