нет доступа к средствам wmi windows 10
Устранение неполадок инструментария WMI
При доступе к локальным или удаленным данным WMI в приложении или скрипте могут возникать ошибки от отсутствующих классов до отказа в доступе. Поставщики также имеют доступные варианты отладки и классы для устранения неполадок.
Следующая документация предназначена для разработчиков и ИТ-администраторов. Если вы являетесь пользователем, имеющим сообщение об ошибке, связанное с WMI, перейдите в Служба поддержки Майкрософт и найдите код ошибки, который вы видите в сообщении об ошибке. Дополнительные сведения об устранении неполадок со сценариями WMI и службой WMI см. в разделе инструментарий WMI не работает.
служебная программа для диагностики WMI
программа диагностики WMI (WMIDiag.exe) больше не поддерживается, начиная с Windows 8 и Windows Server 2012.
Если инструментарий WMI возвращает сообщения об ошибках, имейте в виду, что они могут не указывать на проблемы в службе WMI или в поставщиках WMI. Сбои могут исходить из других частей операционной системы и возникать как ошибки через инструментарий WMI. При любых обстоятельствах не удаляйте репозиторий WMI как первое действие, поскольку удаление репозитория может привести к повреждению системы или установке приложений.
Модули записи поставщика также могут столкнуться с проблемами отладки, если не выполняется запись несвязанного поставщика. Дополнительные сведения см. в разделе службы отладки.
Ведение журнала и трассировка
Файлы журналов WMI больше не существуют; они были заменены трассировкой событий для Windows (ETW). Дополнительные сведения см. в статьях Трассировка действий WMI, ведение журнала действий WMIи файлы журналов WMI.
Устранение неполадок в скриптах и приложениях
Инструментарий WMI содержит набор классов для устранения неполадок клиентских приложений, использующих поставщики WMI. Дополнительные сведения см. в разделе Устранение неполадок клиентских приложений WMI.
Как модули записи поставщика могут предотвратить проблемы WMI
Модули записи поставщика могут предотвращать многие проблемы, которые отображаются в сообщениях об ошибках через WMI, выполняя следующие действия.
доступ запрещен
Ошибки доступа, о которых сообщает скрипты и приложения, обращающиеся к пространствам имен WMI, обычно делятся на три категории. В следующей таблице перечислены три категории ошибок, а также проблемы, которые могут привести к ошибкам и возможным решениям.
Как правило, при подключении к удаленному компьютеру с другой версией операционной системы возникают ошибки DCOM.
Поставщики также могут запрещать доступ к данным в определенных пространствах имен или могут требовать определенных уровней безопасности подключения. Дополнительные сведения см. в разделе Установка клиентских приложений безопасность и Размещение поставщика и безопасность.
Ошибки отказа в доступе из изменений брандмауэра подключения к Интернету (ICF).
Безопасность DCOM возвращает ошибку отказа в доступе, когда клиент с низкой целостностью пытается получить доступ к инструментарию WMI. например, элемент управления ActiveX, работающий в Internet Explorer, уровень безопасности которого имеет значение low, не имеет доступа для выполнения локальных операций WMI.
Windows 7: Пользователи с низкой целостностью имеют разрешения только на чтение для локальных операций WMI.
Сведения об ошибках
При получении сообщения об ошибке из инструментария WMI можно найти сообщение в константах ошибки WMI или, для сценариев, вбемерроренум. Однако сведения, предоставляемые только ошибкой, обычно недостаточно для определения того, что происходит. Повреждение репозитория WMI может быть замаскировано в качестве классов или экземпляров «не найдено».
Дополнительные сведения об ошибках WMI:
Нет доступа к средствам WMI
BB-код ссылки (для форумов):
Хотел узнать Hardware ID.Пробил команду msinfo32,а мне говорят Нет доступа к средствам WMI.Файлы управления Windows были перемещены или удалены. Помогите пожалуйста.
BB-код ссылки (для форумов):
Если все на месте и работает:
BB-код ссылки (для форумов):
А потом я проделал ниже следующее
Вот результат
В результате не получилось
BB-код ссылки (для форумов):
BB-код ссылки (для форумов):
200?’200px’:»+(this.scrollHeight+5)+’px’);»> C:\Users\Tanya>net stop winmgmt
Следующие службы являются зависимыми от службы «Инструментарий управления Window
s».
Останов службы «Инструментарий управления Windows» приведет также к останову эти
х служб.
Центр обеспечения безопасности
Вспомогательная служба IP
Продолжить операцию? (Y-да/N-нет) [N]: y
Служба «Центр обеспечения безопасности» останавливается.
Служба «Центр обеспечения безопасности» успешно остановлена.
Служба «Вспомогательная служба IP» останавливается.
Служба «Вспомогательная служба IP» успешно остановлена.
Служба «Инструментарий управления Windows» останавливается.
Служба «Инструментарий управления Windows» успешно остановлена.
C:\Users\Tanya>cd /d %windir%\sysWOW64\wbem
C:\Windows\SysWOW64\wbem>for %i in (*.exe) do %i /RegServer
C:\Windows\SysWOW64\wbem>mofcomp.exe /RegServer
Microsoft (r) MOF Compiler Version 6.1.7600.16385
Copyright (c) Microsoft Corp. 1997-2006. All rights reserved.
File ‘/RegServer’ not found!
C:\Windows\SysWOW64\wbem>WinMgmt.exe /RegServer
Недопустимый параметр
Инструментарий управления Windows (WMI)
Использование: winmgmt [/backup ] [/restore ]
[/resyncperf] [/standalonehost [ ]] [/sharedhost]
[/verifyrepository [ ]] [/salvagerepository]
[/resetrepository]
/backup
WMI получает команду сохранить архивную копию базы данных с указанным
именем файла. Аргумент «имя_файла» должен содержать полный путь к
местоположению файла. Для этого процесса необходима блокировка записи
в базу данных, что позволяет приостанавливать операции записи в базу
данных до окончания архивации.
/resyncperf
Регистрирует системные библиотеки производительности в WMI.
/standalonehost [ ]
Перемещает службу Winmgmt в автономный процесс Svchost, который имеет
фиксированную конечную точку DCOM. По умолчанию установлена конечная точ
ка
ncacn_ip_tcp.0.24158.
Однако конечную точку можно изменить, запустив Dcomcnfg.exe. Аргумент
«уровень» является уровнем проверки подлинности для процесса Svchost.
Если уровень не указан, по умолчанию устанавливается значение
4 (RPC_C_AUTHN_LEVEL_PKT).
/sharedhost
Перемещает службу Winmgmt в общий процесс Svchost.
/verifyrepository [ ]
Выполняет проверку согласованности базы данных WMI. При добавлении модул
я
/verifyrepository без аргумента проверяется обновляемая база
данных, используемая WMI в настоящее время. Если указать аргумент
«путь», можно будет проверить любую сохраненную копию базы данных.
В таком случае аргумент «путь» должен содержать полный путь к сохраненно
й
Копии базы данных. Сохраненная база данных должна представлять собой пап
ку
с целой базой данных.
/salvagerepository
Выполняет проверку согласованности базы данных WMI и при обнаружении
несогласованности перестраивает базу данных. Если содержимое
несогласованной базы данных можно прочитать, оно добавляется в
перестроенную базу данных. Операция восстановления всегда работает с баз
ой
данных, которая используется в настоящее время службой WMI. Файлы MOF,
содержащие инструкцию препроцессора автоматического восстановления
#pragma, восстанавливаются в базу данных.
/resetrepository
База данных восстанавливается в исходное состояние на момент установки
операционной системы. Файлы MOF, содержащие инструкцию препроцессора
автоматического восстановления #pragma, восстанавливаются в базу данных.
C:\Windows\SysWOW64\wbem>WMIC.exe /RegServer
Invalid Global Switch.
C:\Windows\SysWOW64\wbem>net start winmgmt
Служба «Инструментарий управления Windows» запускается.
Служба «Инструментарий управления Windows» успешно запущена.
C:\Windows\SysWOW64\wbem>winmgmt /salvagerepository
Не удалось восстановить базу данных WMI
Код ошибки: 0x8007007E
WMI: Исправление ошибок, восстановление репозитория в Windows
Любой бывалый Windows-админ периодически сталкивается с проблемами в работе службы WMI (Windows Management Instrumentation) и ее компонентах. Наличие проблем в подсистеме WMI является критичным с точки зрения нормального функционирования Windows, поэтому администратору необходимо проверить и восстановить работоспособность WMI. В этой статье мы опишем простую методику диагностирования и устранения неполадок службы WMI в Windows.
О наличии проблем с WMI может свидетельствовать широкий спектр ошибок:
Диагностика проблем с WMI
В первую очередь нужно проверить служба Windows Management Instrumentation (Winmgmt) установлена в Windows и запущена. Вы можете проверить состояние службы в консоли services.msc или с помощью PowerShell:
Get-Service Winmgmt | Select DisplayName,Status,ServiceName
Если служба Winmgmt запущена, вы можете проверить работоспособность WMI, обратившись к ней с помощью простого WMI-запроса. Вы можете выполнить wmi запрос из командной строки или из PowerShell. Например, следующая команда выведет список установленных в Windows программ:
wmic product get name,version
Простейшая PowerShell команда для получения информации о версии и билда Windows 10 через WMI может выглядеть так:
Как вы видите, служба WMI ответила на запрос корректно. Если при выполнении такого WMI-запроса Windows возвращает ошибку, скорее всего сервиса WMI работает некорректно, поврежден WMI репозиторий или есть какие-то другие проблемы.
В моем случае, например, при открытии свойств WMI Control в консоли управления компьютером (compmgmt.msc) появлялась надпись:
Ранее для диагностики WMI существовала официальная утилита от Microsoft – WMIDiag.vbs (Microsoft WMI Diagnosis). WMIdiag это vbs скрипт, который проверяет различные подсистемы WMI и записывает собранную информацию в лог файлы (по умолчанию логи находятся в каталоге %TEMP% — C:\USERS\%USERNAME%\APPDATA\LOCAL\TEMP\). Получившийся отчет состоит из файлов, имена которых начинаются с WMIDIAG-V2.2 и включает в себя следующие типы фалов:
в противном случае появится ошибка:
После окончания работы утилиты WMIDiag администратор должен изучить полученные файлы логов, проанализировать и попытаться исправить найденные ошибки.
К сожалению, последняя версия WMIDiag 2.2 корректно работает только с версиями до Windows 8.1/Windows Server 2012 R2. На данный момент Microsoft даже удалила ссылку на загрузку WMIDiag из Download Center. Но при желании, этот скрипт можно найти в сети.
WMIDiag может дать подробную информацию по исправлению частных ошибок в WMI, но в большинстве случаев процесс это довольно трудоемкий и стоит потраченного времени только при решении инцидентов в критичных системах (как правило, на продуктивных серверах). Для массового сегмента рабочих станций пользователей сбросить и пересоздатьWMI репозиторий в Windows.
Исправление WMI репозитория, перерегистрация библиотек, перекомпиляция MOF файлов
В Windows 10/Windows Server 2016 вы можете проверить целостность репозитория WMI с помощью команды:
Если команда возвращает, что база данных WMI находится в неконсистентном состоянии (INCONSISTENT или WMI repository verification failed), стоит попробовать выполнить “мягкое” исправление ошибок репозитория:
Данная команда выполняет проверку согласованности хранилища WMI и при обнаружении несогласованности перестраивает базу данных WMI.
Перезапустите службу WMI:
net stop Winmgmt
net start Winmgmt
Если стандартный способ исправления ошибок в WMI не помог, попробуйте следующий скрипт. Данный скрипт представляет собой ”мягкий” вариант восстановления службы WMI на компьютере (выполняется перерегистрация dll библиотек и службы WMI, перекомпилируются mof файлы). Данная процедура является безопасной и ее выполнение не должно привести к каким-либо новым проблемам с системой.
sc config winmgmt start= disabled
net stop winmgmt
cd %windir%\system32\wbem
for /f %s in (‘dir /b *.dll’) do regsvr32 /s %s
wmiprvse /regserver
sc config winmgmt start= auto
net start winmgmt
for /f %s in (‘dir /b *.mof’) do mofcomp %s
for /f %s in (‘dir /b *.mfl’) do mofcomp %s
Указанные команды можно выполнить путем простой вставки в окно командой строки, либо сохранить код в bat файле wmi_soft_repair.bat и запустить его с правами администратора. После окончания работы скрипта, перезагрузите Windows и проверьте работу WMI.
Сброс и пересоздание WMI репозитория (хранилища)
Если вам не помогли мягкие способ восстановления WMI, рассмотренные выше, придется перейти к более “жесткому” способу восстановления работоспособности службы WMI, заключающегося в пересоздании хранилищаWMI.
Если вы подозреваете, что репозиторий WMI поврежден, имейте в виду, что его пересоздание — это последняя шаг, к которому нужно прибегнуть только тогда, когда другие операции не помогают реанимировать WMI.
Следующая команда выполнит сброс базы данных WMI к исходному состоянию (как после чистой установки Windows). Используйте эту команду для выполнения hard reset репозитория WMI, если параметре salvagerepository не исправил проблему:
Если обе команды ( Winmgmt /salvagerepository и Winmgmt /resetrepository ) не восстановили консистентное состояние базы WMI, попробуйте выполнить “жесткое” пересоздание базы WMI вручную таким скриптом:
sc config winmgmt start= disabled
net stop winmgmt
cd %windir%\system32\wbem
winmgmt /resetrepository
winmgmt /resyncperf
if exist Repos_bakup rd Repos_bakup /s /q
rename Repository Repos_bakup
regsvr32 /s %systemroot%\system32\scecli.dll
regsvr32 /s %systemroot%\system32\userenv.dll
for /f %s in (‘dir /b *.dll’) do regsvr32 /s %s
for /f %s in (‘dir /b *.mof’) do mofcomp %s
for /f %s in (‘dir /b *.mfl’) do mofcomp %s
sc config winmgmt start= auto
net start winmgmt
wmiprvse /regserver
Данный скрипт полностью пересоздает хранилище WMI (старый репозиторий сохраняется в каталог Repos_bakup). После окончания работы скрипта нужно перезагрузить Windows. Затем протестируйте работу службы WMI простым запросом.
Проверьте состояние WMI репозитория. Если ошибки исправлены, команда winmgmt /verifyrepository должна вернуть:
В этой статье мы собрали основные способы, позволяющие продиагностировать и устранить неполадки службы и репозитория WMI.
отличная и очень редкая информация! спасибо!
Отличная полезная статья. Сразу решил проблему.
На компьютере возникли проблемы в WMI. При каждом запуске компьютера выходит окошко: «The model does not support WMI», компьютер при этом работает как обычно. Нашла Вашу статью «Устранение неполадок в WMI» и, руководствуясь ей, сначала проверила имеется ли в системе служба Windows Management Instrumentation и включена ли она (имеется и включена), а затем, как у Вас написано, попробовала протестировать работоспособность WMI, обратившись к ней с помощью Powershell — служба выдаёт корректный ответ. Также, вычитав информацию на другом ресурсе, вводила в командную строку sfc/scannow, но никаких ошибок. Посоветуйте, пожалуйста, что я могу сделать?
Как правило в таких ситуациях должен помочь ребилд хранилища WMI. Попробуйте, в статье это подробно описано.
Спасибо, выручил.
Я сразу воспользовался же методом «Перерегистрация библиотек WMI и перекомпиляция mof файлов»
Плиз, поясните по-подробнее смысл команды
if exist Repos_bakup rd Repos_bakup /s /q и её ключей. То ли это условное указание на незнамо что или ещё что. Я в сомнениях по недомыслию. Сенькую.
Плиз, поясните по-подробнее смысл команды
if exist Repos_bakup rd Repos_bakup /s /q и её ключей. То ли это условное указание на незнамо что или ещё что. Я в сомнениях по недомыслию. Сенькую. А то на некоторых сайтах со ссылкой на ваш скрипт юзеры, его применившие, плачут на полный стопер системы и вынуждены откатываться.
ОГРОМНОЕ СПАСИБО! Ничего не помогало, наткнулся на эту статью случайно ЗАРАБОТАЛО! Поклоны бью!
C:\Windows\System32\wbem>for /f %%s in (‘dir /b *.dll’) do regsvr32 /s %%s
Непредвиденное появление: %%s.
oO
windows 2012 r2
У вас в команде неправилные одиночные кавычки. Наберите руками.
for /f %%s in (‘dir /b *.dll’) do regsvr32 /s %%s
у меня та же проблема. кавычки правильные вроде
Формат %%s используется при запуске внутри сценария (*.bat или *.cmd файла).
При использовании в консоли нужно убрать один знак ‘%’. Т.е. команда будет такая:
for /f %s in (‘dir /b /s *.dll’) do regsvr32 /s %s
Здравствуйте. Я ни разу не системщик, работаю вынужденно на фрилансе. Столкнулся в 8.1 Pro с признаками, которые не мог распознать, стал копать, вышел на WMI. К моменту разборок со службой точки сохранения старше 2 дней уже были затёрты. Нашёл, как заменить куст System версией из RegBack с помощью инсталляционного диска (там дата была недельной давности). Нашёл ваши рекомендации. Остановил службу, ввожу (power shell из-под админа, для меня непонятно его отличие от командной строки, командную строку запустил чуть позже) for /f %%s in (‘dir /b *.dll’) do regsvr32 /s %%s — мне отвечает: «строка:1 знак:4
+ for /f %%s in (‘dir /b *.dll’) do regsvr32 /s %%s
+ »
Отсутствует открывающий знак «(» после ключевого слова «for»…
Дописываю скобку после for — выдаёт строку >> и тишина.
Читаю комменты — «надо убрать знак «%», если не бат-файл. Но если он выдаёт ошибку со скобкой, то бат-файл не выполнится.
Там же вы пишите «Указанные команды можно выполнить путем простой вставки в окно командой строки» — и ни слова про %%.
Понятно, что продираюсь сквозь ваши советы, и конечно спасибо, но для несистемщика — очень тяжко.
Вот еще: wmiprvse /regserver командная строка молча проглотила, а на winmgmt /regserver командная строка ответила «недопустимый параметр
WMI
Использование:….»
далее идёт мануал.
Для меня это тупик, не понимаю. Стал выполнять далее, на последнюю строку for /f %s in (‘dir /b *.mfl’) do mofcomp %s ответил: Файл не найден.
Подскажите, пожалуйста, при установке на Windows 7 x64 пакета WebDeploy 3.6 в самом конце установки пишет об ошибке в скрипте и возвращает код ошибки 1702. Гугл сообщает, что ошибка возможно кроется в некорректной работе WMI, перекомпиляция файлов приведенным скриптом (указанная на форумах как путь решения проблемы) не помогла.
В логе установщика ошибка при вызове InstallEtwManifest.
WMIDiag пишет о наличии ошибок в ключах CLSID, связанных с InProcServer32.
winmgmt /verifyrepository возвращает, что все ОК
Заранее благодарен
Почему вы решили, что ошибка связана с WMI, возможно дело в самом установщике или службы Windows Installer.
Согласно кодов ошибок установщика MSI:
1702 — Configuring [2] cannot be completed until you restart your system
Попробуйте просто перезагрузить систему
1) Попробуйте произвести установку с отключенным UAC.
2) Включите ведение подробного журнала установщика Windows m siexec /i /l*v c:\tmp\install.log
Может в логе что-то более конкретное будет…
Не работает служба WMI Writer
Собственно из-за этой службы не имею возможность делать полный БэкАп системы через Акронис, в Акронисе сказали, обратиться в службу поддержки Майкрософт. Перерегистрация компонентов VSS (Volume Shadow Copy Service) в Windows Server не помогла. Что еще можно сделать? спасибо! 🙁
При вводе 3-ей строки споткнулась на том, что не знаю, как вводится спецсимвол иена (юань) в командной строке. Подскажите, пожалуйста!
Не пойму, где вы нашли символ иены? Из спецсимволов использованы только проценты….
Код скрипт не нужно вводит — выполняйте его через копировать/вставить
Подскажите, пожалуйста, как вводятся символы в командную строку, которых нет на клавиатуре? Необходимо восстановить файл WMIServi Application.
Спец символы можно вводить с клавиатуры,, зажав клавишу alt и набрав код символа на цифровой клавиатуры. Таблица с кодами ASCII символов легко ищется в Интернете.
Например, чтобы набрать символ градуса (º), нужно зажать ALT, и ввести 0176 на цифровой (!!) клавиатуре (не цифры на основной).
Либо копи/паст из Word
Спасибо за подсказку, с символами ASCII и таблицей я разобралась. Проблема в том, что скопировать и вставить в командную строку ничего не получается; ПК — ноутбук, цифровая клавиатура есть, но в виртуальном виде, и магии в виде преобразования цифр в символы ASCII не происходит. Очень прошу, подскажите, как быть?
1) Подключила доп. клавиатуру, простые символы перекодируются, сложные (30%) — нет. Как получить сложные символы? 2) Можно ли настроить командную строку т. о., чтобы пользоваться функциями копи/вставка? Windows Vista.
Попробуйте выполнить команду: cmd /u
Это переключение в Unicode
Алина, а зачем собственно вам спец сиволы в cmd? Может вы не с того конца заходите к проблеме?
Может быть. Попробую восстановить все удалённые файлы. Большое Спасибо за помощь и за конструктивный подход в решении компьютерных задач!
Приветствую, возник такой вопрос, при вводе вот этих команд:
winmgmt /kill
winmgmt /unregserver
winmgmt /regserver
пишет: недопустимый параметр, так и должно быть?
еще наткнулся вот на такой сценарий:
sc config winmgmt start= disabled
rundll32 wbemupgd, RepairWMISetup
rundll32 wbemupgd, UpgradeRepository
regsvr32 /s %systemroot%\system32\scecli.dll
regsvr32 /s %systemroot%\system32\userenv.dll
for /f %%s in (‘dir /b *.dll’) do regsvr32 /s %%s
for /f %%s in (‘dir /b *.mof’) do mofcomp %%s
for /f %%s in (‘dir /b *.mfl’) do mofcomp %%s
sc config winmgmt start= auto
я так понял это то же самое, что и в «жестком» пересоздании базы, вот только есть другие команды и в конце последовательность другая команды winmgmt /regserver — это влияет?
Добрый день
Подскажите, на эту ошибку нужно обращать внимание:
Инструментарий управления Windows остановил WMIPRVSE.EXE, так как для квоты достигнут порог предупреждения. Квота: HandleCount, значение: 4099, максимальное значение: 4096, PID WMIPRVSE: 2320, поставщики в этом процессе: %systemroot%\system32\wbem\cimwin32.dll, %systemroot%\system32\wbem\ntevt.dll
Да все при этом вроде бы все нормально работает.
Спасибо! Помог мягкий способ! Но столкнулся с проблемой:
«winmgmt /regserver
пишет: недопустимый параметр, так и должно быть?»
Также были проблемы с %%s и %s — внесите коррективы к описанию в самом начале, пожалуйста.
Проблема возникла на Win10 — ноутбук Acer Aspire R3-471GT после вынужденного обновления BIOS от производителя.
Сейчас все работает, кроме сенсорного ввода. Пытаюсь решить проблему дальше
чет не один из вариантов не помог :((
на команду winmgmt /verifyrepository пишет что базы согласованы, но все равно пуск не удался, даже не знаю что делать
есть варианты еще?
Добрый день! А Вы сталкивались с ошибкой: Регистрация сервера <73E709EA-5D93-4B2E-BBB0-99B7938DA9E4>DCOM не выполнена за отведенное время ожидания. 73E709EA-5D93-4B2E-BBB0-99B7938DA9E4 — это как раз Microsoft WMI Provider Subsystem Host. Система Windows Server 2012 полсе перезагрузки работает ровно 6 дней без проблем потом начинаются сыпаться эти ошибки каждые 10 минут.
Не сталкивался, поищите описание проблемы в буржунете по запросу «The server <784E29F4-5EBE-4279-9948-1E8FE941646D>did not register with DCOM within the required timeout.»