Старожил
Сообщения: 440
Благодарности: 251
|
Профиль
|
Сайт
|
Отправить PM
| Цитировать
Цитата Devils Night:
Интересует вопрос:
Как сделать вот что, идёт запуск инсталятора, инсталятор проверяет наличие трёх файлов 1.exe, 2.dll, 3.ocx в папке C:\Program Files\MyProg и наличие ключа в реестре HKEY_LOCAL_MACHINE\SOFTWARE\MyProg (в этом ключе есть ещё ветки, ну это не важно, главное HKEY_LOCAL_MACHINE\SOFTWARE\MyProg), суть в том что, если инсталятор это всё обнаруживает, то продолжаются дальнейшие действия, если нет, то выводит окно с сообщением типа "не найдены необходимые компоненты", и при нажатии ОК инсталятор закрывается, возможно ли такое сделать? »
|
А почему нет?
Код: 
[Setup]
AppName=MyProg
AppVerName=MyProg
DefaultDirName={pf}\MyProg
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[_Code]
function InitializeSetup: Boolean;
begin
Result:=true;
if not ((RegKeyExists(HKLM, 'SOFTWARE\MyProg'))
and (FileExists('C:\Program Files\MyProg\1.exe'))
and (FileExists('C:\Program Files\MyProg\2.dll'))
and (FileExists('C:\Program Files\MyProg\3.ocx')))
then
begin
MsgBox('Не найдены необходимые компоненты.', mbInformation, MB_OK);
Result:=false;
end;
end;
Только этот пример будет работать, если точно известно местонахождение MyProg и ветки реестра HKEY_LOCAL_MACHINE\SOFTWARE\MyProg.
Если MyProg установлено в другом месте и если используется х64 винда, нужен другой пример 
|
-------
Если сообщение оказалось полезным для Вас, то помимо спасибо, можно нажать на "Полезное сообщение".
Последний раз редактировалось nik1967, 11-10-2011 в 15:04.
Отправлено: 09:51, 11-10-2011
| #3512
|