Показать полную графическую версию : WMI-фильтр для выборки компьютеров не имеющих определенной службы
Всем привет.
Конфигурация компьютера - Политики - Конфигурация Windows - Сценарии - Автозагрузка - 1.bat
внутри bat: запуск инсталлятора софта, который (софт) ставится как служба
хочу применять политику только если службы нет ну или например если служба не в режиме автозапуска
Вопрос 1:
подскажите WMI-фильтр
Спасибо.
alef2474
05-11-2014, 20:12
http://eknigi.org/os_i_bd/7106-administrirovanie-windows-s-pomoshhyu-wmi-i-wmic.html
select * from Win32_Service where State = 'Stopped' And StartMode <> 'Disabled'
Caption=...
Фильтры медленно работают.
«State = 'Stopped'» лишнее, отсутствует «Name='Имя службы'» и, наконец, это не покрывает:
если службы нет »
alef2474
06-11-2014, 10:57
отсутствует «Name='Имя службы'» и, наконец, это не покрывает:
Цитата colaloc:
если службы нет » »
Я подумал вместо Name=... надо Caption=... (мне непонятно, когда-что применяют)
и это условие надо добавить к тем, что выше, чтобы как раз "покрыть" то, что службы нет. Stopped может и не лишнее, т.к. оно отражает случай, что служба есть, но почему-то не работает, может остановлена. Все зависит от логики применения инсталлятора у ТС, которая не ясна до конца.
Caption=... »
Я вовсе не видел, что Вы добавили про «Caption» — отвечал ночью в уже открытой вечером вкладке.
и это условие надо добавить к тем, что выше, чтобы как раз "покрыть" то, что службы нет. »
А как тут покроешь? WHERE "Name <> 'Имя'" всегда вернёт набор, даже тогда, когда служба уже присутствует.
AFAIK фильтр сработает только при ответе True, а в самом фильтре нельзя использовать инвертирование.
посему предлагаю подумать над применением через GPP, где можно через Targetting указать должный ответ WMI запроса (то есть FALSE в данном случае).
хотя, в общем-то, проще встроить проверку в сам батник, или собрать MSI пакет с проверкой (тут на вкус и цвет).
Вооот… Я же помню, что было здесь ранее нечто подобное на примере схожей темы — установки конкретного обновления только на те машины, на которых оно ещё не установлено. И тоже предлагался обходной путь (возможно — тот же самый).
Вооот… Я же помню, что было здесь ранее нечто подобное на примере схожей темы — установки конкретного обновления только на те машины, на которых оно ещё не установлено »
точно ;)
спасибо всем за ответы
1.
перед тем как задавать вопрос я поизучал ответы в интернете
вот кстати та тема про обновление про которую вы вспомнили:
http://forum.oszone.net/post-1786820.html
она просто 11 года, я подумал может что изменилось и придумали таки решение
2.
для gpp на xp надо cse - не установлен
3.
собирать msi ради одной строчки - не хочется
4.
в батнике проверка есть, но все таки стартовать батник всегда - не есть хорошо
Так
и если останавливаться на решении с проверкой в батнике
уточняющий вопрос:
что будет происходить раньше: отработка бат или запуск службы?
вот кстати та тема про обновление про которую вы вспомнили:
http://forum.oszone.net/post-1786820.html »
Она самая ;).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.