Использование DirectoryEntry для перечисления данных конфигурации IIS, получение COMException - PullRequest
2 голосов
/ 23 сентября 2010

Я пытаюсь управлять набором удаленных серверов IIS 6 программным путем, но вхожу в стену.

Мой клиент - Windows 7, и у меня есть права администратора домена.

Соответствующий код выглядит следующим образом:

public void Run()
{
  DirectoryEntry W3SVC = new DirectoryEntry("IIS://server/w3svc");

  foreach (DirectoryEntry site in W3SVC.Children)
  {
    Console.WriteLine(site.Name);
  }
} 

При выполнении я получаю следующее исключение:

Unhandled Exception: System.Runtime.InteropServices.COMException: Unknown error (0x80005000)
   at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
   at System.DirectoryServices.DirectoryEntry.Bind()
   at System.DirectoryServices.DirectoryEntry.get_IsContainer()
   at System.DirectoryServices.DirectoryEntries.ChildEnumerator..ctor(DirectoryEntry container)
   at System.DirectoryServices.DirectoryEntries.GetEnumerator()
   at Worker.Worker.Run() in c:\code\Worker\Worker\Worker.cs:line 31
   at Worker.Worker.Main(String[] args) in c:\code\Worker\Worker\Worker.cs:line 15

Я вижу, что это происходит в Bind (что я предполагаю, это попытка подключения), но я не могу получить дополнительную информацию здесь.

У кого-нибудь есть совет? Спасибо!

1 Ответ

5 голосов
/ 24 сентября 2010

Ах!Оказывается, у меня не было инструментов управления IIS 6, установленных на моей машине.После того, как я их установил, все выполнено, как и ожидалось.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...