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

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 4]

Закрытая тема
Настройки темы
Скрипты Inno Setup. Помощь и советы [часть 4]

Аватара для El Sanchez

Ветеран


Contributor


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


Конфигурация

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


Изменения
Автор: Vadikan
Дата: 22-05-2012
Описание: Закрыто
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;

  • Inno Script Generator - генератор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • ISSJoiner - Программа для объединения нескольких скриптов InnoSetup в один.
    Последняя версия: 3.0 [23.07.2009]

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.4 [13.03.2010] - Скачать;


Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:
Inno Setup [все вопросы] часть 1
Inno Setup [все вопросы] часть 2
Скрипты Inno Setup. Помощь и советы [часть 3]


Продолжение обсуждения
Скрипты Inno Setup. Помощь и советы [часть 5]

Отправлено: 18:01, 29-08-2011

 

Пользователь


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

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


Как задать в свойствах ярлыка или где, чтобы прога запускалась, только с правами Администратора? На Висте и 7-ке ярлык со "щитом." Или это только в Манифесте прописывается?

Отправлено: 18:54, 13-12-2011 | #371



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для YURSHAT

Старожил


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

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


TROY Diamond
Цитата TROY Diamond:
Как с помощью [INI] или как-то по другому создать файл, текстовый и другие, НО ТОЛЬКО С ОДНИМ ЗНАЧЕНИЕМ "ВНУТРИ", БЕЗ параметра, никаких "Section", "InstallPath", НЕ надо!
Только одно значение БЕЗ всего - в одну строчку, без кавычек, тире, двоеточий, типа открыл это файл, а там только:
htuifgvifgj4575489jgfkgfmgf765авроршгщ
и всё больше ничего нет! »
Можно так

TROY Diamond,
Цитата TROY Diamond:
Как сделать, чтобы установка продолжалась, ТОЛЬКО после "прочтения" Лицензионного соглашения и/или какого-то сообщения.
Я видел, к примеру, кнопки не активные, пока не прокрутишь текст до самого низа... »
Держите
примерчик
Код: Выделить весь код
[Setup]
AppName=My Program
AppVerName=My Program v.1.2
DefaultDirName={pf}\My Program
LicenseFile=compiler:License.txt

[Files]
Source: compiler:InnoCallback.dll; Flags: dontcopy

[Code_]
type
  TProc = procedure(HandleW, msg, idEvent, TimeSys: LongWord);
const
  EM_GETFIRSTVISIBLELINE = $CE; TestLine = 5;
var
  TimerID: LongWord;

function WrapTimerProc(callback:TProc; paramcount:integer):longword; external 'wrapcallback@files:innocallback.dll stdcall';
function SetTimer(hWnd: LongWord; nIDEvent, uElapse: LongWord; lpTimerFunc: LongWord): LongWord; external 'SetTimer@user32.dll stdcall';
function KillTimer(hWnd: LongWord; nIDEvent: LongWord): LongWord; external 'KillTimer@user32.dll stdcall';

procedure OnTimer(HandleW, msg, idEvent, TimeSys: LongWord);
var
  CurrLine: integer;
begin
  CurrLine:= SendMessage(WizardForm.LicenseMemo.Handle, EM_GETFIRSTVISIBLELINE, 0, 0);
  If CurrLine >= TestLine then
    begin
      WizardForm.LicenseAcceptedRadio.Enabled:= True;
      KillTimer(0, TimerID);
    end;
  //WizardForm.Caption:= IntToStr(CurrLine);
end;

procedure InitializeWizard();
begin
  WizardForm.LicenseAcceptedRadio.Enabled:= False;
end;

procedure CurPageChanged(CurPageID: Integer);
var
  pfunc: LongWord;
begin
  if CurPageID = wpLicense then
    begin
      pfunc:= WrapTimerProc(@OnTimer, 4);
      TimerID:= SetTimer(0, 0, 500, pfunc);
    end else
      KillTimer(0, TimerID);
end;

procedure DeinitializeSetup();
begin
  KillTimer(0, TimerID);
end;


Цитата TROY Diamond:
Как задать в свойствах ярлыка или где, чтобы прога запускалась, только с правами Администратора? »
О свойствах ярлыка - читаем справку к инно

-------
Если я знаю, что знаю мало, я добьюсь того, чтобы знать больше... В.И. Ленин
Krinkels.org - сжатие данных и создание инсталляторов


Последний раз редактировалось YURSHAT, 13-12-2011 в 19:10.

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

Отправлено: 19:03, 13-12-2011 | #372


Аватара для semiono

Ветеран


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

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


Мне нужен код чтобы разрешить установку части контента, но только при помощи ключа.
Например:
MyProg.exe /verysilent /x1 /x2 итд...
Чтобы из секции файлов копировались файлы с флагом Code: {x1} и Code: {x2} и остальные как обычно.
Просто не помню как к коду это привязать.
GUI диалог мне не нужен! Только средством ключей, и хотя бы пару покажите, ато я сам запутаюсь.
---
И ещё мне нужен ключ, чтобы указать путь установки: /PATH=... Как это в InnoSetup работает, есть ли ограничения?
Всмысле мне нужно чтобы путь указывался только посредством ключа коммандной строки,
а в GUI режиме не было возможности указать путь. Это возможно? Покажите пожалуйста?

-------
Полезное сообщение


Отправлено: 21:59, 13-12-2011 | #373


Аватара для boss911

Alien


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

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


Цитата mopsicus:
как перед установкой программы, удалить какой либо ярлык? »
Код: Выделить весь код
[InstallDelete]
Name: {userdesktop}\shortcut.lnk; Type: files
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:40, 13-12-2011 | #374


Аватара для semiono

Ветеран


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

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


Помогите, пожалуйста!
Мне нужно чтобы

[Files]
... Components: a
... Components: b
...
чтобы компоненты a и b поумолчанию не устанавливались, и устанавливались только при явном их выборе. Причём нужен выбор этих компонентов из коммандной строки, например, /A /B и не зависимо друг от друга.
Графический (GUI) выбор компонентов совсем не нужен и лучше его скрыть, тем более что файлы
группы A и B по умолчанию исключены.

Проще говоря нужно такое
файл_1 установить = да
файл_2 установить = да
файл_3 установить = нет
файл_4 всегда установить
итп.

управление только с коммандной строки, хотя в худшем случае можно продублировать в GUI

-------
Полезное сообщение


Отправлено: 01:39, 14-12-2011 | #375


Аватара для R.i.m.s.k.y.

Ветеран


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

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


Цитата semiono:
Мне нужен код чтобы разрешить установку части контента, но только при помощи ключа. »
ну примерно так:
Код: Выделить весь код
[Files]
Check: Check_X1; Source: x1files; DestDir: {app}\; Flags: ignoreversion noencryption
Check: Check_X2; Source: x2files; DestDir: {app}\; Flags: ignoreversion noencryption

[*C*ODE]
var x1, x2 : boolean;

Function Check_X1() : boolean;
begin
If x1 = true then Result := True else Result := False;
end;

Function Check_X2() : boolean;
begin
If x2 = true then Result := True else Result := False;
end;

Function InitializeSetup: Boolean;
var
i : integer; st : string;
Begin
  x1 := false; x2 := false;
  for i:=2 to ParamCount do begin
    st := Lowercase(ParamStr(i));
    Result := True;
    case st of
      Lowercase('/x1')   : x1 := true;
      Lowercase('/x2')   : x2 := true;
    end; //case
    Result := True;
  end;//for
end;//InitializeSetup
если параметров Х1/Х2 много, имеет смысл загнать проерку в одну спецфункцию Check_X где в цикле проверять какие из них назадавали в комстроке, но тут в моем мозгу происходит переполнение стека и родить такую я не могу, даже себе

по поводу компонентов - инно поддерживает сам параметр /COMPONENTS="a,b"
читай в справке Setup Command Line Parameters

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!


Последний раз редактировалось R.i.m.s.k.y., 14-12-2011 в 15:45.

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

Отправлено: 07:43, 14-12-2011 | #376


Аватара для semiono

Ветеран


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

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


i is unknown parameter! я паскаль не знаю, как поправить? определил как i : integre, сразу последовало тоже самое с st
---
Цитата R.i.m.s.k.y.:
если параметров Х1/Х2 много, имеет смысл загнать проерку в одну спецфункцию Check_X где в цикле проверять какие из них назадавали в комстроке »
не мне много не надо, разобью на группы контент, хотя бы пару ключей хватит

-------
Полезное сообщение


Отправлено: 15:02, 14-12-2011 | #377


Аватара для R.i.m.s.k.y.

Ветеран


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

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


semiono,
поправил верхнее сообщение
Код: Выделить весь код
Function InitializeSetup: Boolean;
var
i : integer; st : string;

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!

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

Отправлено: 15:30, 14-12-2011 | #378


Аватара для Photon9

Новый участник


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

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


мой вопрос наверное с большой бородой и не раз задавался, тем не менее немогу разобратся, суть проблемы такова - имеется игра и имеется дополнительный софт (GfWL, visual c++, directx и т.д.) собственно необходимо даный софт прописать в скрипте так чтобы в процессе установки в инсталятора были опции (снять-поставить галочку) с выбором устанавливать или нет даный софт, как ни ковыряю скрипт получается только прописать распаковывать при установке в папку с игрой софт или нет, а вот установку как запустить немогу понять.
З.Ы. Надеюсь понятно описал суть проблемы и не очень сумбурно

Отправлено: 15:30, 14-12-2011 | #379


Аватара для semiono

Ветеран


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

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


Ура! Кажись работает как надо! Только end ещё один не хватало...
i: Integer;
st : String;

-------
Полезное сообщение


Отправлено: 15:37, 14-12-2011 | #380



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 4]

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Test ferget Тест-форум 0 24-08-2011 01:25
test ! ! Aaa ! ! Тест-форум 0 23-04-2011 11:29
test Santa aka Snt Тест-форум 0 16-04-2011 22:35
test xolod. Программное обеспечение Linux и FreeBSD 0 19-04-2009 21:03
Test memory KEugeNik Хочу все знать 11 23-11-2003 23:11




 
Переход