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

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

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

Аватара для 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] - Скачать;

  • RegExporter - Фриварная утилита для экспорта реестра и конвертации файлов *.reg и *.ini в инсталляционные скрипты Inno Setup и NSIS.
    Последняя версия: 1.2.0 [23.09.2014] - Скачать;



Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:

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

Отправлено: 11:48, 10-03-2014

 

Ветеран


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

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


svs23
Скрытый текст
Тогда предложите пользователю установку notepad++, а он уже сам решит, нужен он ему или нет. Да и, на мой взгляд, совершенно не обязательно, чтобы файл открывался именно notepad++. Существует множество других редакторов. Я, например, пользуюсь, другой программой. Так что лучше будет устанавливать по выбору, чтобы потом уши не горели)).

Отправлено: 13:58, 09-12-2014 | #2121



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

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


Аватара для Dodakaedr

Ветеран


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

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


Цитата Kashtan007:
Процесс WorldOfTanks.exe, да пробовал, процесс не убивается ( »
Должен. Тестировал на Калькуляторе. DLL-ка думаю имеется.

Цитата saurn:
не работает на Unicode версии »
работает

Скрытый текст
Код: Выделить весь код
[Setup]
AppName=My Program
AppVerName=My Program ver.1.5
DefaultDirName={pf}\My Program

[Files]
Source: "compiler:Dll Pack\ISTask.dll"; DestDir: "{app}"

[Code]
function KillTask(ExeFileName: ansistring): Integer; external 'KillTask@files:ISTask.dll stdcall delayload setuponly';
function RunTask(FileName: ansistring; bFullpath: Boolean): Boolean; external 'RunTask@files:ISTask.dll stdcall delayload setuponly';
function KillTaskA(ExeFileName: ansistring): Integer; external 'KillTask@{app}\ISTask.dll stdcall delayload uninstallonly';
function RunTaskA(FileName: ansistring; bFullpath: Boolean): Boolean; external 'RunTask@{app}\ISTask.dll stdcall delayload uninstallonly';

function InitializeSetup(): Boolean;
begin
  If RunTask('calc.exe', false) then begin
    if MsgBox('Программа установки обнаружила, что программа Калькулятор запущена в данный момент.'#13#13'Закрыть программу и продолжить установку?', mbError, mb_YesNo) = idYes then begin
      KillTask('calc.exe');
      Result := True;
    end else
      Exit;
    end;
    Result := True;
end;

function InitializeUninstall(): Boolean;
begin
  If RunTaskA('calc.exe', false) then begin
    if MsgBox('Программа удаления обнаружила, что программа Калькулятор запущена в данный момент.'#13#13'Закрыть программу и продолжить установку?', mbError, mb_YesNo) = idYes then begin
      KillTaskA('calc.exe');
      Result := True;
    end else
      Exit;
    end;
  Result := True;
  UnloadDLL(ExpandConstant('{app}\ISTask.dll'));
end;

-------
Inno Setup 5 Ultra Unicode


Последний раз редактировалось Dodakaedr, 09-12-2014 в 14:10.

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

Отправлено: 14:03, 09-12-2014 | #2122


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


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

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


Цитата saurn:
Тогда предложите пользователю установку notepad++, а он уже сам решит, нужен он ему или нет. Да и, на мой взгляд, совершенно не обязательно, чтобы файл открывался именно notepad++. Существует множество других редакторов. Я, например, пользуюсь, другой программой. Так что лучше будет устанавливать по выбору, чтобы потом уши не горели)). »
сделать предложение на установку notepad++ не проблема
просто есть люди для которых огромная проблема "Открыть с помощью" и найти там "подходящую" программу

txt они еще откроют, т.к. в системе имеется текстовый редактор, которым не рекомендуют править файлы настроек модов, а вот что делать с xml для них уже проблема (проверено на личном опыте, ТАКИЕ люди есть).....

Отправлено: 14:28, 09-12-2014 | #2123


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


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

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


как добавить пустую строку в лог после окончания установки? чтобы видеть моменты между установками?
Скрытый текст
Код: Выделить весь код
procedure ExtLog();
begin 
SaveStringToFile(ExpandConstant('{app}\res_mods\SVS_mini_mod_pack_setup.log'), #13#10 + GetDateTimeString('dd/mm/yyyy hh:nn:ss', '-', ':') + ' - ' + ExpandConstant(CurrentFileName), True); 
end;

Отправлено: 15:04, 09-12-2014 | #2124


Аватара для Dodakaedr

Ветеран


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

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


Цитата saurn:
Потому что на деле используете ISTaskU.dll. Обычная же в юникоде не работает »
Нет, я использовал ISTask.dll.

-------
Inno Setup 5 Ultra Unicode


Отправлено: 15:09, 09-12-2014 | #2125


Ветеран


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

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


Цитата Dodakaedr:
Нет, я использовал ISTask.dll. »
Действительно, работает. Но игнорирует некоторые процессы. В 64-х разрядной среде в упор не видит, к примеру, тот же запущенный калькулятор.

Отправлено: 15:22, 09-12-2014 | #2126


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


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

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


saurn, хм.. у меня 64-х разрядная среда, и процесс закрывается (по примеру Dodakaedr).

Отправлено: 17:52, 09-12-2014 | #2127


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


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

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


Dodakaedr, обнаружил проблему, когда нажимаю "Нет", то установка продолжается, и процесс не закрывается.

Отправлено: 18:13, 10-12-2014 | #2128


Аватара для kotyarko@fb

Старожил


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

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


Цитата Kashtan007:
когда нажимаю "Нет", то установка продолжается, и процесс не закрывается »
На нажатие "нет" можно повесить процедуру Abort. При этом не стоит забывать, что при аборте будет вызываться процедура DeinitializeSetup, и если в ней есть что-то связанное с визадом (например, WizardForm.Free), то программа будет ругаться. Это можно решить создав булевую переменную, и присваивать ей определённые значения, которые будут проверяться; и в зависимости от результата выполняться та же WizardForm.Free.
Это решение при нескольких функциях InitializeSetup, когда Result := False не решает.

-------
http://forum.worldoftanks.ru/topic/1429925-/
Исходник моего установщика: https://bitbucket.org/Kotyarko_O/kmp


Последний раз редактировалось kotyarko@fb, 10-12-2014 в 19:27.


Отправлено: 19:21, 10-12-2014 | #2129


Аватара для habib2302

Ветеран


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

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


Доброе время суток. Есть один вопрос. Дело в том, что когда идет распаковка в {tmp} нету никакого диалогового окна т.е приложение запущено, а окна или хотя бы прогресбара нет особенно если еще большой объем файлов. как избавиться

-------
Помог? От "Полезное сообщение" не откажусь!!!


Последний раз редактировалось habib2302, 10-12-2014 в 22:46.


Отправлено: 21:12, 10-12-2014 | #2130



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 6] El Sanchez Автоматическая установка приложений 2494 10-03-2014 11:51
Скрипты Inno Setup. Помощь и советы [часть 5] El Sanchez Автоматическая установка приложений 1999 28-03-2013 19:09
Скрипты 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




 
Переход