Если я назначаю программное обеспечение с помощью GPO, я предполагаю, что клиентские машины установят его при следующей перезагрузке. Однако я не могу быть уверенным, не посетив каждого из клиентов и не проверив себя. Есть ли способ проверить, какие клиенты установили программное обеспечение (например, с WSUS), или способ написать сценарий для проверки версий установленного программного обеспечения на клиентах?
В GPO нет встроенного механизма отчетности. Любое приличное программное обеспечение для управления конфигурацией может сообщать, что установлено, или вы можете создать сценарий.
Предупреждение В следующем коде, рекомендованном Microsoft, есть серьезные проблемы. См. Комментарий под этим ответом со ссылкой на статью базы знаний «Rapid Publishing» (т.е. Emergency) за 2009 год.
Если вы используете достаточно новые компьютеры (Vista / 2008 +), вы можете использовать PowerShell: gwmi -comp computer_name Win32_Product
чтобы получить список установленного программного обеспечения. Он возвращает такую информацию, как:
IdentifyingNumber : {D11F66FF-82B3-DDB8-1146-525370552BE1}
Name : Windows Software Development Kit for Windows Store Apps
Vendor : Microsoft Corporation
Version : 8.59.25584
Caption : Windows Software Development Kit for Windows Store Apps
Это может быть дополнительно написано сценарием для создания списка компьютеров с различными версиями определенного программного обеспечения, экспорта в CVS или другого соединения ODBC или различных задач ... в зависимости от того, что вы ищете. Этот процесс немного сложен, поэтому вы, вероятно, захотите запустить этот «-AsJob» для параллельного выполнения нескольких запросов.
Вопрос слишком общий, поэтому я могу дать вам максимум указаний. Подумайте, как бы вы подтвердили установку. Может ли, например, наличие файла в% programfiles% \ Company \ SoftwareXYZ \ abc.exe сказать вам, что приложение установлено успешно?
Как только вы это поймете, вам нужно будет написать сценарий, чтобы проверить это.
Затем вам нужно где-то сообщить результат. Например, вы можете опубликовать COMPUTERNAME как файл в сетевой папке. Например, следующая строка в пакетном файле сделает это:
echo. > \\MyServer\MyShare\%COMPUTERNAME%_Success.txt
Наконец, вы можете добавить этот сценарий в качестве сценария запуска в тот же объект групповой политики.