2
私の目標は、リモートサーバーからWebサイト名のリストを取得することです。しかし、私は例外を得ています:どのポートが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で使用されているかです。 ファイアウォールをオフにしないでWebサイト名を取得する方法はありますか?
これは(広範囲の)ポート範囲を使用します。特定のポートまたはそれより小さい範囲に強制する必要がある場合は、[こちら](http://support.microsoft.com/kb/154596)を参照してください。誤解されていないなら、UDP 389も必要です。 – vcsjones