Невозможно установить соединение WMI с компьютера XP Pro на другой (не в домене, в той же рабочей группе) в С#

У меня есть две машины XP Pro SP3. Я отключил брандмауэр в обоих. Имя рабочей группы — WORKGROUP. У меня есть учетная запись администратора с одинаковым именем пользователя/паролем в обоих. Мой код для подключения следующий:

    ConnectionOptions options = new ConnectionOptions();
    options.Username = myUsername;
    options.Password = myPassword;
    options.Authority = "ntdlmdomain:WORKGROUP"; // Commenting this or not makes no difference
    ManagementScope scope = new ManagementScope(String.Format("\\\\{0}\\{1}", hostname, Namespace), options);
    scope.Connect();

Я всегда получаю System.UnauthorizedAccessException с текстом:

    "Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))"

Приведенный выше код работает между двумя компьютерами, которые являются частью одного и того же домена AD. Что я делаю неправильно?


person JCCyC    schedule 02.07.2009    source источник


Ответы (3)


Этот вопрос касается удаленного доступа к WMI и не имеет ничего общего с C# (я ожидаю, что вы получите ту же ошибку с другими инструментами запросов WMI, например, WBEMtest), неоднократно появлялся при сбое сервера: см. http://www.google.com/search?q=site%3Aserverfault.com+wmi+access+denied&ie=utf-8&oe=utf-8&aq=t

person Richard    schedule 03.07.2009

Это распространенная проблема с WMI. См. Часто задаваемые вопросы по WMI или документацию по защита удаленных подключений WMI.

person Garett    schedule 01.07.2010

Настройте локальную политику безопасности и службы, чтобы разрешить всем, а также параметры в папке, чтобы отключить общий доступ. После этого я смог подключиться к двум машинам XP в рабочей группе с помощью WMI.

person Suraj Yadav    schedule 06.03.2012