Страница: 1 |
Страница: 1 |
Вопрос: Ошибка при запуске скриптов WMI
Добавлено: 02.03.07 20:45
Автор вопроса: avax | Web-сайт:
Привет!
Использую Microsoft Visal Basic 6.0 Professional Edition, русская версия. Возникла необходимость получения системной информации (название видеокарты, производитель видеокарты, название материнской платы, частота процессора и т.д.) Для этого использую WMI-скрипты. Нашел рабочие, на одном компьютере все работает прекрасно, на другом компьютере точно такие же настройки, стоит ссылка на Microsoft WMI Library 1.2, но при запуске подавляющего большинства скриптов выдает следующую ошибку:
Ошибка во время выполнения программы "-2147217394 (8004100e)'
Ошибка автоматизации
Подскажите пожалуйста, можно ли ее исправить и если да, то как?
Спасибо.
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 03.03.07 02:23
Проверь, запущена ли служба WMI
Номер ответа: 2
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #2
Добавлено: 03.03.07 02:24
Если тебе это поможет, такой код ошибки имеет WBEM_E_INVALID_NAMESPACE
Номер ответа: 3
Автор ответа:
avax
Вопросов: 2
Ответов: 2
Web-сайт:
Профиль | | #3
Добавлено: 03.03.07 09:06
Спасибо, проблема уже решена, теперь скрипты работают отлично. Что было сделано:
1. перекомпилированы компоненты WMI Инструментария управления Windows. Сначала был выключен Инструментарий управления как Служба, а затем я стер все файлы из папки "\WINDOWS\system32\wbem\Repository". После чего снова запустил службу Инструментарий управления Windows, в результате все файлы перекомпилировались.
2. создал BAT-файл следующего содержания
net stop winmgmt
c:
cd %windir%\system32\wbem
rd /S /Q repository
regsvr32 /s %systemroot%\system32\scecli.dll
regsvr32 /s %systemroot%\system32\userenv.dll
mofcomp cimwin32.mof
mofcomp cimwin32.mfl
mofcomp rsop.mof
mofcomp rsop.mfl
for /f %%s in (’dir /b /s *.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
mofcomp -n:root\cimv2\applications\exchange wbemcons.mof
mofcomp -n:root\cimv2\applications\exchange smtpcons.mof
mofcomp exmgmt.mof
mofcomp exwmi.mof
net start winmgmt
.. и запустил его.
В принципе, все - после этого скрипты заработали.