问题描述
|
我正在尝试获取在远程服务器上运行的IIS服务的列表,问题是,如果我尝试访问除本地主机以外的服务器,则会收到RPC错误,因此无法检索数据!我现在正在使用的代码是:
try
{
string s = null;
Hos = Hos.Trim();
DirectoryEntry IIS = new DirectoryEntry(\"IIS://\" + Hos + \"/w3svc/1/root\",\"username\",\"password\");
foreach (DirectoryEntry de in IIS.Children)
{
if (de.Children.ToString() != null)
{
s += de.Name.ToString() + \"\\n\";
}
}
return s;
}
catch (Exception ex)
{
MessageBox.Show(\"Error in EnumerateWebsites: \" + ex.Message);
return null;
}
我返回该字符串并显示在TextBlock中,无论如何它在本地系统上都可以正常工作,如果我使用.exe并在diff comp上运行它,那么它也能够在该计算机上检索IIS服务。但是远程访问不起作用..
解决方法
这实际上是愚蠢的。我只需要删除用户名和密码,因为我的组织使用Windows身份验证。 Anyhoo现在,我可以从已为其分配管理员的任何计算机上检索信息。