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

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

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

Ветеран


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


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

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


Изменения
Автор: Serega
Дата: 13-08-2011
Вложения
Тип файла: 7z Inno Setup [все вопросы] часть 1.7z
(1.34 Mb, 908 просмотров)
Тип файла: 7z Inno Setup [все вопросы] часть 2.7z
(3.12 Mb, 806 просмотров)
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
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] - Скачать;

  • InnoSetup Script Joiner - Программа для объединения нескольких скриптов InnoSetup в один;

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


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

-------
Книги нужны, чтобы напоминать человеку, что его оригинальные мысли не так уж новы... Авраам Линкольн.


Отправлено: 00:28, 04-11-2010

 

Аватара для Gnom_aka_Lexander

Ветеран


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

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


Neutron,
читать дальше »
Код: Выделить весь код
procedure InitializeWizard();
begin
  with WizardForm.ComponentsList do
  begin
    Visible := False;
  end;
end;

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

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

Отправлено: 12:18, 01-05-2011 | #1491



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

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


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


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

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


Habetdin, спасибо огромное, работает)

Единственный нюанс - в Exec(Firefox, 'file:///{tmp}/plugin.xpi', '', SW_SHOW, ewWaitUntilTerminated, res); нету распознавания {tmp}, т.е. работает только если написать прямой путь, типа C:/plugin.xpi. Можно ли заставить выполнять файл из системной папки temp?

Отправлено: 12:46, 01-05-2011 | #1492


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

Ветеран


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

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


Цитата MrAWP:
Можно ли заставить выполнять файл из системной папки temp »
можно, заставляй выполняться!
а вообще если бы ты читал хотя бы иногда форум то наверняка наткнулся на функцию ExpandConstant
Exec(Firefox, 'file:///'+ExpandConstant('{tmp}')+'/plugin.xpi', '', SW_SHOW, ewWaitUntilTerminated, res)

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

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

Отправлено: 13:28, 01-05-2011 | #1493


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


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

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


R.i.m.s.k.y., спасибо)
извиняюсь за свою некомпетентность)

Отправлено: 14:02, 01-05-2011 | #1494


Старожил


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

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


Может кто-нибудь дать ссылку на depack.exe(вместе с 7z.dll) зарание спасибо

дайте ссылку на depack.exe c 7z.dll

-------
Стремись не к тому, чтобы добиться успеха, а к тому, чтобы твоя жизнь имела смысл.(Альберт Эйнштейн)


Отправлено: 18:42, 01-05-2011 | #1495


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

Ветеран


Contributor


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

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


Цитата R.i.m.s.k.y.:
а с выдергиванием айпишника из выхлопа ipconfig никто не поможет? »
Цитата R.i.m.s.k.y.:
собрал свой вариант вычисления айпишника, айпиадреса, айпи, IP адреса, IPAdress, IP Adress, IPAdres, IP Adres (это были теги для поиска
нужен AdapterWatch »
R.i.m.s.k.y., можно и без сторонних средств, например, использовать WMI:
Код: Выделить весь код
[code]
type
   IP_ADDR_INFO = array of record
      Description: String;
      IPv4: String;
      IPv6: String;
   end;

function GetLocalIP(var IPAddrInfo: IP_ADDR_INFO): Boolean;
var
   objSWbemLocator, objSWbemServices, objSWbemObjectSet, objRegExp, objRegExpMatches: Variant;
   IndexCount, i: Byte;
   strBuf, ptrnIPv4, ptrnIPv6: String;
begin
   try
      objSWbemLocator := CreateOleObject('WbemScripting.SWbemLocator');
      objRegExp := CreateOleObject('VBScript.RegExp');
   except
      ShowExceptionMessage;
      Exit;
   end;
   ptrnIPv4 := '(\d{1,3}[.]){3}\d{1,3}'; //IPv4 regexp
   ptrnIPv6 := //IPv6 regexp
      '(([0-9a-fA-F]{1,4}:){1,1}(:[0-9a-fA-F]{1,4}){1,6})|(([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5})|' +
      '(([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4})|//(([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3})|' +
      '(([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2})|(([0-9a-fA-F]{1,4}:){1,6}(:[0-9a-fA-F]{1,4}){1,1})|' +
      '((([0-9a-fA-F]{1,4}:){1,7}|:):)|(:(:[0-9a-fA-F]{1,4}){1,7})|(((([0-9a-fA-F]{1,4}:){6})(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}))|' +
      '((([0-9a-fA-F]{1,4}:){5}[0-9a-fA-F]{1,4}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}))|' +
      '(([0-9a-fA-F]{1,4}:){5}:[0-9a-fA-F]{1,4}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3})|' +
      '(([0-9a-fA-F]{1,4}:){1,1}(:[0-9a-fA-F]{1,4}){1,4}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3})|' +
      '(([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,3}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3})|' +
      '(([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,2}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3})'; 

   objSWbemServices := objSWbemLocator.ConnectServer();
   objSWbemServices.Security_.ImpersonationLevel := 3;
   IndexCount := objSWbemServices.ExecQuery('SELECT * FROM Win32_NetworkAdapterConfiguration').Count;
   objSWbemObjectSet := objSWbemServices.ExecQuery('SELECT Description,IPAddress FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE');

   for i := 1 to IndexCount do
   try
      SetArrayLength(IPAddrInfo, GetArrayLength(IPAddrInfo)+1);
      strBuf := objSWbemObjectSet.Item('Win32_NetworkAdapterConfiguration.Index=' + IntToStr(i)).GetObjectText_;
      IPAddrInfo[GetArrayLength(IPAddrInfo)-1].Description := objSWbemObjectSet.Item('Win32_NetworkAdapterConfiguration.Index=' + IntToStr(i)).Properties_.Item('Description').Value;
      objRegExp.Pattern := ptrnIPv4;
      if objRegExp.Test(strBuf) then
      begin
         objRegExpMatches := objRegExp.Execute(strBuf);
         IPAddrInfo[GetArrayLength(IPAddrInfo)-1].IPv4 := objRegExpMatches.Item[0].Value;
      end;
      objRegExp.Pattern := ptrnIPv6;
      if objRegExp.Test(strBuf) then
      begin
         objRegExpMatches := objRegExp.Execute(strBuf);
         IPAddrInfo[GetArrayLength(IPAddrInfo)-1].IPv6 := objRegExpMatches.Item[0].Value;
      end;
   except
      GetExceptionMessage;
      SetArrayLength(IPAddrInfo, GetArrayLength(IPAddrInfo)-1);
   end;
   Result := (GetArrayLength(IPAddrInfo) > 0);
end;

procedure InitializeWizard();
var
   i: Byte;
   arr: IP_ADDR_INFO;
begin
   if GetLocalIP(arr) then for i := 0 to GetArrayLength(arr)-1 do
   MsgBox(
      'Description: ' + arr[i].Description + #13#10 +
      'IPv4: ' + arr[i].IPv4 + #13#10 +
      'IPv6: ' + arr[i].IPv6 + #13#10, mbInformation, MB_OK);
end;

Последний раз редактировалось El Sanchez, 15-08-2011 в 13:31. Причина: ошибочка затесалась

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

Отправлено: 16:44, 02-05-2011 | #1496


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

Ветеран


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

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


Спасибо!

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


Отправлено: 18:44, 02-05-2011 | #1497


Ветеран


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

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


Как сделать чтобы время во время установки ишло?

Отправлено: 21:55, 02-05-2011 | #1498


Аватара для YURSHAT

Старожил


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

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


Цитата insombia:
Как сделать чтобы время во время установки ишло? »
Вам нужно системное время или время до завершения установки?

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


Отправлено: 15:13, 03-05-2011 | #1499


Ветеран


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

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


YURSHAT время до завершения установки

Отправлено: 19:29, 03-05-2011 | #1500



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Утилиты - [addon] Inno Setup CrOsP Наборы обновлений для Windows XP/2003/Windows 7 33 11-05-2011 16:03
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34
Inno Setup 5.3.6 OSZone Software Новости программного обеспечения 0 15-11-2009 17:30
Скрипты Inno Setup Compiler QAZAK Автоматическая установка приложений 7 15-01-2007 17:59
Inno Setup tradeukraine Вебмастеру 3 13-06-2006 20:39




 
Переход