Поделиться через


Устранение неполадок WMI

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

Заметка

Сведения в этом разделе предназначены для разработчиков и ИТ-администраторов. Если вы являетесь конечным пользователем, который столкнулся с сообщением об ошибке по WMI, посетите службу поддержки Майкрософти найдите код ошибки, который отображается в сообщении об ошибке. Дополнительные сведения об устранении неполадок с скриптами WMI и службой WMI см. в статье WMI не работает!

Программа диагностики WMI

Важный

Программа диагностики WMI (WMIDiag.exe) больше не поддерживается, начиная с Windows 8 и Windows Server 2012.

Windows 7, Windows Server 2008 R2, Windows Vista и Windows Server 2008:

Если WMI возвращает сообщения об ошибках, помните, что они могут не указывать на проблемы в службе WMI или в поставщиках WMI. Сбои могут возникать в других частях операционной системы и проявляться как ошибки через WMI. Ни при каких обстоятельствах не следует удалять репозиторий WMI в качестве первой меры; так как удаление репозитория может привести к повреждению системы или установленным приложениям.

Ранее, для получения дополнительных сведений об источнике проблемы, можно было скачать и запустить диагностическую утилиту WMI командной строки. Это средство создало отчет, который обычно может изолировать источник проблемы и предоставить инструкции по ее устранению. Доклад также помог службам поддержки Майкрософт в оказании помощи вам. Программа диагностики WMI ранее была доступна в Центре загрузки.

Как автор провайдеров, вы также можете столкнуться с проблемами отладки, если вы не пишете слабо связанный провайдер. Для получения дополнительной информации см. раздел о средствах отладки.

Ведение журнала и трассировка

Файлы журнала WMI больше не существуют; они были заменены трассировкой событий для Windows (ETW). Дополнительные сведения см. в разделе отслеживания действий WMI, ведения журнала WMIи файлы журналов WMI.

Устранение неполадок в сценариях и приложениях

WMI содержит набор классов для устранения неполадок клиентских приложений, использующих поставщиков WMI. Дополнительные сведения см. в устранении неполадок клиентских приложений WMI.

Как поставщики-писатели могут предотвратить проблемы WMI

Поставщики и авторы могут предотвратить множество проблем (которые отображаются в сообщениях об ошибках через WMI), осуществляя следующие действия:

Дополнительные сведения см. в разделе отладочные поставщики, предоставление данных в WMI, а также конфигурация и устранение неполадок классов поставщика.

Доступ запрещен

Ошибки "Доступ запрещен", которые сообщаются скриптами и приложениями, обращающимися к пространствам имен WMI и данным, как правило, делятся на три категории. В следующей таблице перечислены три категории ошибок, а также проблемы, которые могут вызвать ошибки и возможные решения.

Ошибка Возможные проблемы Решение
0x800706BA HRESULT_FROM_WIN32(RPC_S_SERVER_UNAVAILABLE)
Проблема брандмауэра или сервер недоступны.
Компьютер действительно не существует, или брандмауэр Windows блокирует подключение
Подключение к Vista: netsh advfirewall firewall set rule group="инструментарий управления windows (wmi)" new enable=yes Подключение к предыдущей версии: Разрешите правило "Удалённое администрирование" в Брандмауэре Windows.
0x80070005 E_ACCESS_DENIED
Доступ запрещен политикой безопасности DCOM.
У пользователя нет удаленного доступа к компьютеру через DCOM. Как правило, ошибки DCOM возникают при подключении к удаленному компьютеру с другой версией операционной системы.
Предоставьте пользователю разрешения удаленного запуска и удаленной активации в dcomcnfg. Щелкните правой кнопкой мыши "Мой компьютер-> свойства". В разделе "Безопасность COM" щелкните "Изменить ограничения" для обоих разделов. Предоставьте пользователю удаленный доступ, удаленный запуск и удаленную активацию. Затем перейдите в конфигурацию DCOM, найдите "Инструментирование управления Windows" и предоставьте пользователю возможность удаленного запуска и удаленной активации. Дополнительные сведения см. в разделе Подключение между разными операционными системами
0x80041003 WBEM_E_ACCESS_DENIED
Доступ отказан поставщиком
У пользователя нет разрешения на выполнение операции в WMI. Это может произойти при запросе определенных классов в качестве пользователя с низким уровнем прав, но чаще всего происходит при попытке вызвать методы или изменить экземпляры WMI в качестве пользователя с низкими правами. Пространство имен, к которому вы подключаетесь, зашифровано, и пользователь пытается подключиться с незашифрованным подключением
Предоставьте пользователю доступ с помощью элемента управления WMI (убедитесь, что значение параметра Remote_Access установлено на true). Подключитесь с использованием клиента, поддерживающего шифрование.
  • Как правило, ошибки DCOM возникают при подключении к удаленному компьютеру с другой версией операционной системы.

  • Поставщики также могут запретить доступ к данным в определенных пространствах имен или требовать определенных уровней безопасности подключения. Дополнительные сведения см. в разделе Настройка безопасности процесса клиентского приложения и Размещение и безопасность провайдера.

  • Ошибки отказа в доступе, вызванные изменениями брандмауэра подключения к Интернету (ICF).

    Дополнительные сведения см. в подключении через брандмауэр Windows.

  • Ошибка отказа в доступе возвращается системой безопасности DCOM, когда клиент с низкой целостностью пытается обратиться к WMI. Например, элемент управления ActiveX, работающий в Internet Explorer с низким уровнем безопасности, не имеет доступа для выполнения локальных операций WMI.

    Windows 7: пользователи с низким уровнем целостности имеют только разрешения на чтение для локальных операций WMI.

Сведения об ошибках

При получении сообщения об ошибке из WMI, вы можете найти соответствующее сообщение в Константы ошибок WMI или, для сценариев, в WbemErrorEnum. Однако информация, предоставляемая ошибкой, обычно недостаточно для определения того, что происходит. Повреждение репозитория WMI может маскироваться как классы или экземпляры "не найдены".

Дополнительные сведения об ошибках WMI:

устранение неполадок в WMI

Трассировка активности WMI

Ведение журнала активности WMI