как узнать какой антивирус на компе и еще пару вещей :)
Суть вот в чем:
Пишу скриптик небольшой для небольшой инвентаризации :) Хочу знать собрать следующую информацию: Название операционной системы - есть в реестре знаю где Версия сервис пака - тоже в реестре тоже знаю Наличие офиса и его версию - наверно есть где-то в реестре но не знаю где точно Наличие антивируса и его версию - еверест во вкладке безопасность его находит ,так что думаю где-то в реестре антивирусы отмечаются, опять же не знаю где. Брендмауэр - тоже что и по поводу антивира Вроде все. Если кто знает где в реестре искать , или может есть какая команда для этого, буду очень признателен. |
антивирус, офис, файервол - все это приложения, и никто не мешает на одну машину установить несколько разных офисов и антивирусов, какой из них тогда выбирать?.. ИМХО один выход - перебирать все возможные и определять - установлен или нет, и если да, то какая версия... чтобы не париться с реестром, лучше использовать WMI Installer Provider
пример CMD-команды, выводящей список установленного софта и его параметры: Код:
WMIC Product Get /Value |
amel27, к сожалению, Win32_Product воспринимает только msi.
mitiya, пример получения полного списка установленных программ по этой ссылке (InstalledApplications). |
Цитата:
Код:
REG QUERY (путь) /v (значение) Остальные ф-ии прочитай сам :) Код:
Reg /? |
Цитата:
|
Medic84, это все я зная , тут проблемы нет , просто для полноты картины написал.
Цитата:
А по поводу антивируса, я все же склонен считать что эти приложения как то отмечаются в системе ибо например центр обеспечения безопасности мне пишет в графе защита от вредоносных программ - nod , брендмауэр - smart security. |
mitiya
Ошибка в шапке Цитата:
|
Цитата:
Если существует такой-то ключ реестра допустим (HKLM\Software\Eset\Nod) то выводит его версию и т.п. А если нет то пропускает, и так с любым. Проблема только в том что придется все в ручную забивать(все антивирусы и т.п.) |
Medic84, в том то и дело что не хочется перебирать все, не говоря уже о том что придется все эти антивирусы ставить и смотреть какой ключ они создаю.
Если винда как-то узнает какой антивирус стоит, то лучше всего этой возможностью воспользоваться. Очень сомневаюсь что винда перебирает все антивирусы по такому же принципу. |
Конкретно про антивирус и фаерволл: если ОС знает о них, то и Вы можете узнать вот так посредством WMI (пример на WSH/VBScript; проверялось на Windows XP SP3 Professional: ниже SP2 работать не будет, выше — теоретически возможно, но не проверялось):
Код:
Option Explicit Update: поскольку выше речь косвенно шла вроде как о пакетных файлах, то приведу описанный функционал и для них (посредством WMIC): Код:
wmic.exe /Node:. /NameSpace:\\Root\SecurityCenter Path AntiVirusProduct Get CompanyName, DisplayName, VersionNumber, productUpToDate |
Iska, спасибо все работает.
А что это за зверь такой этот wmic , и откуда он данные берет , не уж то не из реестра ? |
Цитата:
|
По поводу офиса еще.
Появилась следующая идея: Проверять ассоциацию *.doc и от сюда брать то какой офис используется. Но тут как всегда пара проблем, в реестре doc не напрямую ассоциируется с приложением, а через Word.Document.8 и я просто подозреваю, что в случает например с опенофисом ключи будут другие. Может кто знает консольную прогу, которая выведет сразу приложение ассоциируемое с данным расширением ? А так же способ получить версию exe . |
Что-то наподобие такого:
Код:
@echo off |
Iska,
хотел использовать этот скрип так же для определения архиватора, но тут он не сработал. Все из-за разделителя во 2м for. Мне вот интересно можно брать кусочки с конца а не с начала , или хотя бы получить общее их число чтоб взять нужный ? |
может так?
Код:
@Echo Off |
у меня вот еще такой вопрос.
Нельзя ли wmic задать какой-нибудь разделитель, а то я пытаюсь выцепить с помощью for /f из Код:
companyName displayName productUptoDate versionNumber |
mitiya, используйте ключ /Value
Код:
WMIC /NameSpace:\\Root\SecurityCenter Path AntiVirusProduct Get CompanyName,DisplayName,VersionNumber,productUpToDate /Value |
amel27, ох спасибо
|
на 2003м сервере выдало вот что
Код:
ОШИБКА: |
Цитата:
|
я так понимаю эти способы не позволят точно определить антивирус , необходим перебор ?
еверест кстати в 2003м без проблем показал антивирус, все же есть подозрение что он не перебором его вычислил. |
Время: 09:49. |
Время: 09:49.
© OSzone.net 2001-