У меня есть сценарий:
- несколько компьютеров конечных точек, каждая из которых работает с 32-битной копией Win7 Professional;
- У меня есть готовый образ ОС, который я устанавливаю на новые машины, а при необходимости - на старые;
- есть некоторые скрипты, которые запускаются при первой загрузке ОС;
У меня есть скрипт, который должен ждать, пока все устройства не будут найдены и установлены. Есть ли способ проверить, нашла ли Windows и установила ли все драйверы на подключенные устройства? Я пытался ждать определенное количество времени, но это варьируется от машины к машине. Как я могу это определить? Powershell, Batch, некоторые значения реестра?
1 ответ
То, что вам нужно, возможно, но потребует много работы.
Вы можете использовать WMIC с условием WHERE и проверять состояние каждого конкретного устройства. Проблема заключается в том, что фильтр WHERE должен использоваться на каждом конкретном устройстве по-разному, в зависимости от того, какие параметры устройства можно проверить.
Например:
wmic NICCONFIG, ГДЕ IPEnabled = true
Будет использоваться условие WHERE для отображения только тех адаптеров, у которых активен протокол IP, поэтому они правильно работают и активны.
NICCONIFIG является основным параметром, используемым для запросов NIC. Каждый тип устройства будет иметь свой собственный тип.
Так что вам нужно сделать список устройств по типу, получить их основное имя WMIC и для каждого получить соответствующий атрибут статуса, который может показать, правильно ли установлено устройство или нет.