Имя пользователя:
Пароль:
 | Правила  

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

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

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

Ветеран


Contributor


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


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

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


Изменения
Автор: El Sanchez
Дата: 16-02-2015
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
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. Помощь и советы [часть 4]

Отправлено: 03:49, 21-05-2012

 

Аватара для Gnom_aka_Lexander

Ветеран


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

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


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

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Последний раз редактировалось Gnom_aka_Lexander, 03-02-2013 в 12:07.

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

Отправлено: 11:54, 03-02-2013 | #1611



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

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


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


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

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


Gnom_aka_Lexander, Ооо, тогда это конечно, уже другой вопрос.

Отправлено: 12:00, 03-02-2013 | #1612


Ветеран


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

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


По окончании установки Your Uninstaller с ключом
Код: Выделить весь код
start /wait yusetup7p.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-
происходит автозапуск этой программы. Подскажите ключ для полностью тихой установки программы без автозапуска её в конце установки.
инсталлятор - http://rghost.ru/43511242

Отправлено: 13:32, 03-02-2013 | #1613


Аватара для Johny777

Ветеран


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

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


зашпилил новый способ (почти новый ) перетаскивания формы за любую область!
раньше на форму нужно было накладывать прозрачный лейбл и присваивать ему в OnMouseDown
эту процедуру:
[more]
Код: Выделить весь код
function ReleaseCapture: Longint; external 'ReleaseCapture@user32.dll stdcall';

procedure MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  ReleaseCapture;
  SendMessage(WizardForm.Handle,$0112,$F012,0);
end;
или всем остальным компонентам, за которые нужно было таскать
вот код. никаких OnMouseDown и лейблов. Он самодостаточный для всей клиентской области вне зависимости от того что на ней лежит
читать дальше »

Код: Выделить весь код
[Setup]
AppName=MyApp
AppVerName=MyApp
DefaultDirname={pf}\MyApp

[code]
const
  WM_SYSCOMMAND = $0112;
  WM_MOUSEMOVE = $0200;
  VK_LBUTTON = 1;
  SC_DRAGMOVE = $F012;

type
  SHORT = Longint;

function GetKeyState(nVirtKey: Integer): SHORT; external 'GetKeyState@user32.dll stdcall';
function ReleaseCapture: BOOL; external 'ReleaseCapture@user32.dll stdcall';

procedure AppOnMSG(var Msg: TMsg; var Handled: Boolean);
begin
  if Msg.message = WM_MOUSEMOVE then if GetKeyState(VK_LBUTTON) > 0 then
  begin
    ReleaseCapture;
    SendMessage(WizardForm.Handle, WM_SYSCOMMAND, SC_DRAGMOVE, 0);
    Handled := False;
  end;
end;

procedure InitializeWizard();
begin
  Application.OnMessage := @AppOnMSG;
end;

Пользуйтесь кому надо!

вот ещё забавный пример! попробуйте
читать дальше »

Код: Выделить весь код
[Setup]
AppName=MyApp
AppVerName=MyApp
DefaultDirname={pf}\MyApp

[  code]
const
  WM_SYSCOMMAND = $0112;
  WM_MOUSEMOVE = $0200;
  VK_LBUTTON = 1;
  SC_DRAGMOVE = $F012;

type
  SHORT = Longint;

function GetKeyState(nVirtKey: Integer): SHORT; external 'GetKeyState@user32.dll stdcall';
function ReleaseCapture: BOOL; external 'ReleaseCapture@user32.dll stdcall';
function SetCapture(hWnd: HWND): HWND; external 'SetCapture@user32.dll stdcall';

procedure AppOnMSG(var Msg: TMsg; var Handled: Boolean);
begin
  if Msg.message = WM_MOUSEMOVE then if GetKeyState(VK_LBUTTON) > 0 then
  begin
    ReleaseCapture
    SendMessage(Msg.hwnd, WM_SYSCOMMAND, SC_DRAGMOVE, 0);
    Handled := False;
  end;
end;

procedure InitializeWizard();
begin
  Application.OnMessage := @AppOnMSG;
end;

===================================================================================

Gnom_aka_Lexander, касательно моего вопроса с пред. страницы можешь помочь?

Последний раз редактировалось Johny777, 03-02-2013 в 15:00.

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

Отправлено: 14:53, 03-02-2013 | #1614


Аватара для Gnom_aka_Lexander

Ветеран


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

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


Цитата sov44:
инсталлятор »
скрипт нужен а не инсталлятор.
Навскидку, то что анпакером вытащил:
Код: Выделить весь код
[Run]
Filename: "{app}\urmain.exe"; Parameters: "-buildcache"; StatusMsg: "Searching installed applications, this may take a few minutes..."; MinVersion: 0.0,5.0; 
Filename: "{app}\inimerge.exe"; Parameters: """{app}\uruninstaller.ini"" ""{userappdata}\URSoft\Your Uninstaller\uruninstaller.ini"""; MinVersion: 0.0,5.0; 
Filename: "{app}\autoupdater.exe"; Parameters: "/halfsilent 0"; Description: "Check for updates."; MinVersion: 0.0,5.0; 
Filename: "{app}\urmain.exe"; Description: "Run Your Uninstaller!"; MinVersion: 0.0,5.0;
Вся секция лишена каких-либо условий, поэтому будет отрабатывать всегда. Повесьте на нее ключ который и будет управлять запуском-незапуском.
к примеру - Check : not WizardSilent на каждую строчку - вполне то, что нужно.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Последний раз редактировалось Gnom_aka_Lexander, 03-02-2013 в 15:02.

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

Отправлено: 14:56, 03-02-2013 | #1615


Аватара для Gnom_aka_Lexander

Ветеран


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

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


Цитата Johny777:
касательно моего вопроса с пред. страницы можешь помочь? »
Цитата Johny777:
это крайность. Думаю можно и без библиотек реализовать! »
Не нужно быть настолько категоричным. библиотека это всегда хорошо. Код исполняемый виндой будет работать значительно быстрее кода, который исполняет интерпретатор инно. В результате чего, для достижения быстродействия будет занимать гораздо меньше процессорного времени. (на самом деле это не совсем так, но как понятно объяснить разницу - я не знаю). Мораль - всякие каллбеки и вообще очень большие куски кода лучше все-таки делать внутри библиотек - пользователям не нравится, когда инсталлу требуется комп чуть-ли не мощнее, чем нужен для того, что он устанавливает.

Элементарный пример: простейший код, который связыет две формы между собой - при реализации из инно все мигает, пропадает и вообще всякие артефакты. Если сунуть его в длл-ку, то все работает настолько четко, что можно подумать, что это не две формы а вообще одна, по хитрому отрисованая.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Последний раз редактировалось Gnom_aka_Lexander, 03-02-2013 в 16:42.

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

Отправлено: 16:28, 03-02-2013 | #1616


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


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

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


Gnom_aka_Lexander, я сидел на этими скриптами часа 2, но так и не смог разобраться, ты бы ещё хоть сам скачал и посмотрел на примерах, я вообщще не понял в какую папку он скачал файлы

Отправлено: 19:40, 03-02-2013 | #1617


Ветеран


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

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


мне нужно чтобы файл распаковался по такому пути через isdone но можно и через секцию files http://i54.fastpic.ru/big/2013/0203/...9a93c14d49.jpg

Отправлено: 20:13, 03-02-2013 | #1618


Ветеран


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

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


Нужна программа для распаковки последней версии Your Uninstaller! Pro 7.4.2012.05 DC 03.02.2013
innounp_plus_0.36, innounp038 не справляются http://savepic.org/2731889.jpg

Отправлено: 20:26, 03-02-2013 | #1619


Аватара для Gnom_aka_Lexander

Ветеран


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

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


by_gangster, Берем прямо первый пример из тех, что идут с библиотекой. открываем. и что мы там видим?
Код: Выделить весь код
 itd_addfile('http://www.sherlocksoftware.org/petz/files/dogz5.zip',expandconstant('{tmp}\dogz5.zip'));
что тут непонятно?
первый параметр - адрес, второй - полный путь до сохраняемого файла. если ты не знаешь, куда ведет константа {tmp}, то посмотри в справке.

insombia, ExpandConstant('{userappdata}\Theta') вопрос поднимается периодически, хотел предложить вынести константы с описаниями в шапку, но смысл - если лень посмотреть в справку, то в шапку заглянуть не менее лениво будет, мне кажется.

sov44, запусти инстал и нажми меню о программе. там видно, что скомпилено на расширенной версии инно, а для расширенной версии так никто никогда и не сделал еще анпакера.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Последний раз редактировалось Gnom_aka_Lexander, 04-02-2013 в 13:11.

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

Отправлено: 12:10, 04-02-2013 | #1620



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 4] El Sanchez Автоматическая установка приложений 2099 22-05-2012 23:16
Скрипты Inno Setup. Помощь и советы [часть 3] Serega Автоматическая установка приложений 3755 26-10-2011 17:58
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34
Скрипты Inno Setup Compiler QAZAK Автоматическая установка приложений 7 15-01-2007 17:59
Inno Setup tradeukraine Вебмастеру 3 13-06-2006 20:39




 
Переход