[архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Ответить
 • Просмотры: 46
Аватара пользователя
Serega

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение Serega »

Цитата Cranz86:



а примерно в чём она может заключаться, если при ewNowait относительно нормально ставиться?
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]




Интересное высказывание... если бы было у вас нормально, то думаю вы бы не задавались таким вопросом.

Ошибка может быть в передаваемых параметрах запуска, вашей сторонней программы.
Аватара пользователя
ADremLIN

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение ADremLIN »

К сожалению Вы не поняли суть вопроса. Изображение

Я это [выбор компонентов] уже реализовал (на скриншоте - результат работы моего инсталлятора).

Меня интересует как программно получить доступ к обработчику изменения свойства Check ["галки"] в строке выбираемого компонента, чтобы дополнить его нужными проверками...

>>P.S.

>>Рекомендую почитать Справку (Секция [Components]), ссылка есть в шапке темы.

Уверяю Вас, что я начал работу с чтения именно этого раздела. Изображение

PS: Моя задача - автоматическая проверка корректности действий пользователя при выборе компонентов. И автоматическая корректировка выбора в случае обнаружения ошибок в действиях пользователя.
Аватара пользователя
YURSHAT

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение YURSHAT »

YURSHAT, это ты по задумке Комбата панель на панель накладываешь для прозрачности в Unicode-версии?? Изображение
Аватара пользователя
YURSHAT

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение YURSHAT »

A1EXXX, да не, делаю панель с использованием фотошопа. Кстати на вопросик не ответите?

P.S.

По задумке комбата панель получается полностью прозрачной, а нам надо полупрозрачность
Аватара пользователя
A1EXXX

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение A1EXXX »

Цитата lmiol:



я не совсем понял как вписать
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]





Пример




Код:

Код: Выделить всё

[Files]
Source: compiler:Examples\MyProg.exe; DestDir: {code:DetectWindows}; Flags: ignoreversion
[Code]
function DetectWindows(s: string): string;
var
  SubKeyName, ResultStr: string;
begin
  SubKeyName:= 'Software\Microsoft\Windows NT\CurrentVersion';
  RegQueryStringValue(HKLM, SubKeyName, 'ProductName', ResultStr);
  if Pos('XP', ResultStr) > 0 then
    Result:= ExpandConstant('{%APPDATA}\id Software')
  else
  if Pos('Vista', ResultStr) > 0 then
    // не знаю, будет ли это C:\Users\Ваше_имя_пользователя\AppData\LocalLow\id Software
    // проверить не где
    Result:= ExpandConstant('{%APPDATA}\LocalLow\id Software')
  else Result:= ''; // сюда нужно вписать путь по дефолту, т.е. если не XP или Vista
end;
Аватара пользователя
lmiol

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение lmiol »

вот новая трабла)))

как сделать чтобы если виста то файлы автоматом в одну папку а если хр то в другую инсталились
Аватара пользователя
МИШАНЧИК

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение МИШАНЧИК »

Цитата beve:



Подскажите
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]




так:



Код:

Код: Выделить всё

[Files]
Source: Papka\*; DestDir: {app}; Flags: createallsubdirs ignoreversion recursesubdirs
Аватара пользователя
Kilya

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение Kilya »

Цитата:



скрипт для возможности - установить и распаковать программу! как у
NOD32 Update Viewer





читать дальше »






Код:

Код: Выделить всё

[Setup]
AppName=My Program
AppVerName=My Program
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputDir=userdocs:My Program.
AppID=NAV
[.Code.]
var
  InstType, UnpackType: TRadioButton;
procedure InitializeWizard();
var
  TypeText: TNewStaticText;
begin
  TypeText := TNewStaticText.Create(WizardForm);
  with TypeText do
  begin
    Left := WizardForm.WelcomeLabel2.Left;
    Top := WizardForm.WelcomeLabel2.Top + WizardForm.WelcomeLabel2.Height - WizardForm.WelcomeLabel2.Height div 4 - ScaleY(20);
    Width := WizardForm.WelcomeLabel2.Width div 2;
    Caption := 'Тип установки:';
    Parent := WizardForm.WelcomePage;
  end;
  InstType := TRadioButton.Create(WizardForm);
  with InstType do
  begin
    Left := WizardForm.WelcomeLabel2.Left + ScaleX(20);
    Top := WizardForm.WelcomeLabel2.Top + WizardForm.WelcomeLabel2.Height - WizardForm.WelcomeLabel2.Height div 4;
    Width := WizardForm.WelcomeLabel2.Width div 2;
    Caption := 'Установить';
    Checked := True;
    Parent := WizardForm.WelcomePage;
  end;
  UnpackType := TRadioButton.Create(WizardForm);
  with UnpackType do
  begin
    Left := WizardForm.WelcomeLabel2.Left + ScaleX(20);
    Top := InstType.Top + InstType.Height + ScaleY(3);
    Width := WizardForm.WelcomeLabel2.Width div 2;
    Caption := 'Распаковать файлы';
    Parent := WizardForm.WelcomePage;
  end;
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
  if CurStep = ssDone then
    if UnpackType.Checked then
    begin
      // Если отмечено "Распаковать файлы"
      // Удаляются файлы деинсталлятора и реестра.
      DeleteFile(ExpandConstant('{uninstallexe}'));
      DeleteFile(ExpandConstant('{app}\unins000.dat'));
      RegDeleteKeyIncludingSubkeys(HKLM, 'Software\Microsoft\Windows\CurrentVersion\Uninstall\NAV_is1');
    end;
end;







в єтом коде все прекрасно, но...

Если до этого установка производилась и были созданы ярлыки в СтартМеню - Все программы

то при распаковке их желательно удалить тоже, уже бьюсь бьюсь - а удалить их не получается....

Помогите!!!

Интересует єта ветка (ProgramData\Microsoft\Windows\Start Menu)
Аватара пользователя
МИШАНЧИК

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение МИШАНЧИК »

Подскажите пожалуйста!

Как удалить определённые ветви реестра перед началом инсталяции?
Ответить

Вернуться в «Автоматическая установка приложений»