Войти

Показать полную графическую версию : [решено] GPO и WMI-фильтры


pogo
21-04-2014, 10:03
Доброго времени суток.

Подскажите пожалуйста, т.к. к одной групповой политике можно применить только 1 wmi-фильтр, можно ли в этом фильтре использовать несколько запросов?
Например:
SELECT * FROM Win32_VideoController WHERE (CurrentHorizontalResolution=1920 AND CurrentVerticalResolution=1080) AND SELECT * FROM Win32_ComputerSystem WHERE NOT (Name LIKE "w8-%")
Используя 2 запроса по очереди, т.е.
root\CIMv2 SELECT * FROM Win32_VideoController WHERE (CurrentHorizontalResolution=1920 AND CurrentVerticalResolution=1080)
root\CIMv2 SELECT * FROM Win32_ComputerSystem WHERE NOT (Name LIKE "w8-%")
вроде как не работает и применяется только последний фильтр.

pogo
22-04-2014, 13:57
Проблему решил следующим образом.
Не использовал 2 разных select, а нашёл эквивалент Win32_ComputerSystem.Name в классе Win32_VideoController.

Получилось так:
SELECT CurrentHorizontalResolution, CurrentVerticalResolution, SystemName FROM Win32_VideoController WHERE
((CurrentHorizontalResolution=2048 AND CurrentVerticalResolution=1152)
OR (CurrentHorizontalResolution=1920 AND CurrentVerticalResolution=1200)
OR (CurrentHorizontalResolution=1920 AND CurrentVerticalResolution=1080)
OR (CurrentHorizontalResolution=1600 AND CurrentVerticalResolution=900)
OR (CurrentHorizontalResolution=1440 AND CurrentVerticalResolution=900)
OR (CurrentHorizontalResolution=1366 AND CurrentVerticalResolution=768)
OR (CurrentHorizontalResolution=1280 AND CurrentVerticalResolution=720)
OR (CurrentHorizontalResolution=1152 AND CurrentVerticalResolution=648)
OR (CurrentHorizontalResolution=1024 AND CurrentVerticalResolution=576)) AND (SystemName <> 'w8-%')

Применяя этот wmi-фильтр в групповых политиках, можно добиться, что бы политика применялась к компам с одним из указанных разрешений и из из этого списка исключались компы с именем w8-....
Может кому пригодиться.

Iska
22-04-2014, 14:15
AND (SystemName <> 'w8-%') »
…AND (SystemName NOT LIKE 'w8-%')
?!

pogo
22-04-2014, 15:22
Первоначально так и пытался сделать через "NOT LIKE", но запрос не работал, начал пробовать разные варианты, гуглить, где-то наткнулся на вариант, что в Wmi запросе вообще что должно быть:
…AND (NOT SystemName LIKE 'w8-%')Но оказалось всё проще, проблемы были из-за того, что одни из скобок были неправильно поставлены, из-за чего условие отрабатывало не так, как было задумано, когда проблема была выявлена и устранена, в качестве теста использовался оператор сравнения "<>", а не "NOT LIKE", по этому сюда и был скопирован рабочий вариант.

Не очень понял, к чему Вы выделили знак процента, тут подразумевается, что будут отобраны устройства, начинающиеся с символов "w8-". Но это не столько важно, т.к. тут вписывается индивидуально имя компа.

Iska
22-04-2014, 18:26
Не очень понял, к чему Вы выделили знак процента, тут подразумевается, что будут отобраны устройства, начинающиеся с символов "w8-" »
pogo, не подразумевается. «<> 'w8-%'» — это в точности «не равно 'w8-%'». Отнюдь не «не начинающиеся на 'w8-'».




© OSzone.net 2001-2012