Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно
MKN MKN вне форума

Ветеран


Сообщения: 2355
Благодарности: 557

Профиль | Отправить PM | Цитировать


Цитата K.A.V.:
ваши скрипты определения установленного ПО будут весьма полезны для SFX Creator »
Думаю, что коллекционировать скрипты определения установленного ПО не оч. хорошая идея.

Во-первых, таких скриптов будет без счёта, а во-вторых, вполне достаточно проверять наличие имени приложения в ключе, куда его помещает путное ПО :
SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\имя приложения

Для бестолкового же ПО, проверять наличие конкретных (определённых пользователем в скрипте) ключей и файлов. (Так вроде уже реализовано в SFX Creator_е) С перспективой определения и сравнения версий исполняемых файлов и библиотек и выдачи соответствующего сообщения...

Отдельно надо выделить проверку наличия установленного ПО посредством MSI установщиков.

Делается это обычно по коду продукта. Либо упрощённо, по наличию этого кода в соответствующем ключе реестра либо более "тщательно", но громоздко с помощью макроса опубликованного kotkovets и включенного в справочник.

Сейчас файл нужного msi инсталлятора, приходится вручную открывать с помощью MSI редактора и в таблице Property искать ProductCode, который и использовать в скрипте.

Вот тут есть смысл попробовать упростить пользователю задачу по нахождению этого кода продукта в MSI установщике.

Для автоматизации действий, можно экспортировать Property с помощью известной утилитки MsiDb.Exe (и ключей) в файл.
http://msdn.microsoft.com/en-us/libr...%3Dvs.85).aspx
Результат экспорта - "специализированный" файл, с расширением idt, - по сути обыкновенный текстовый файл, в котором
находим строку ProductCode, напротив которой нужное нам значение - {разные цифирки}.

Скрипт должен изъять это значение и поместить куда надо... (Т.е. надо найти в файле Property.idt строку, начинающуюся с "ProductCode" и поместить в переменную всё что есть в этой строке в скобках {}, кроме самой записи ProductCode. )

Это было бы действительно весьма полезно... (для начала, сделать хотя бы только утилитку для извлечения ProductCode из MSI файла)

Последний раз редактировалось MKN, 25-05-2011 в 17:11.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:46, 25-05-2011 | #139