Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup: создание инсталляционных пакетов (Часть 15)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153

Открыть новую тему     Написать ответ в эту тему

Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Inno Setup
 
 

Предыдущие части
Это мощное бесплатное средство для создания установочных пакетов (дистрибутивов) программ. Поддерживается шифрование, установка пароля, различные задачи по завершении установки.
По сравнению с NSIS (основной конкурент на бесплатной основе) проще в настройке, имеет более понятную структуру скрипта, но генерит на 200-300 кб больший инсталятор. На данный момент он конкурирует и даже превосходит многие коммерческие установщики по функциональности и стабильности.
All version | Исходники проекта
 
Последние версии:
Inno Setup 6.3.3 [12.07.2024]
Скачать (5,37 Mb)
 
Inno Setup QuickStart Pack (Unicode) 6.1.2 [15.11.2020]
Скачать (4.23 Mb)
 
Что нового? | Что нового v.6x?  
 
Русский язык для Inno Setup v6.x
Скачать
 
Русский язык для Inno Setup v5.x
Скачать
 
Русская справка к версии - 5.6.1 (Зеркало) | 6.0.0 beta | 6.x
 
Последняя версия с поддержкой Windows 95 - 5.1.7
 
Последняя версия с поддержкой Windows 98/ME/NT4 - 5.4.3 ANSI
 
Последняя версия с поддержкой Windows 2000/XP/2003 - 5.6.1 (ANSI, Unicode)
 

Расширенная версия от китайских собратьев. Офсайт
Inno Setup Compiler 5.5.0-5.2 build 121216
Скачать (2.98 Mb) |Скачать (2.98 Mb) - зеркало GoogleDrive | Что нового
 
Inno ISCmplr Setup 5.5.1 build 120726
Скачать (1.73 Mb) | Что нового
 
Добавляет списку компонентов возможность сворачивать дочерние элементы. Содержит более удобный редактор, кроме того, компилятор имеет множество других возможностей и новых функций. На сайте автора также есть дополнительные библиотеки.
 
Русский язык для Inno Setup Enhanced (Restools) версии 5.4.x (ansi и unicode) от vadimsva
Скачать
 


Документация, FAQ, и различные примеры для Inno Setup - Здесь можно найти различную документацию, примеры, архивы веток InnoSetup для оффлайн просмотра, и т.д.
 
Дополнительные библиотеки для Inno Setup - InnoTools Downloader, коллекция DLL файлов, распаковка архивов 7-zip и FreeArc и т.д.
 
Дополнительные утилиты для Inno Setup - сюда входят различные распаковщики, надстройки над Inno Setup, различные генераторы скриптов, утилита объединения скриптов и т.д.
 
Скрипты инсталляторов для игр - В этом разделе можно найти различные обложки и скрипты инсталляторов для игр.  
 
Скрипт для добавления ярлыков в Game Explorer (работает только в Windоws 7)

Родственные темы:

Inno Setup плюс внешние упаковщики - обсуждение FreeArc+Inno, Precomp+Inno, 7zip+Inno и Inno+остальные внешние упаковщики.
 
Пережатиe/Pекомпрессия/Oптимизация файлов для лучшего сжатия - обсуждение того, какими утилитами/способами лучше сжимать, чтобы получить как можно меньший размер инсталятора.

Примечание для всех участников

Правила топика посвященному Inno Setup  
 
Перед тем, как задать вопрос: Первый вариант: загрузите "версию для печати" (ссылка справа вверху, над номерами страниц) и попробуйте поискать средствами браузера (ctrl+F). Второй вариант: для экономии трафика и для более удобного поиска, скачайте оффлайн версию форума для просмотра в разделе Документация.
Большинство типовых задач уже решались, причем неоднократно!  
Пожалуйста, не захламляйте тему и используйте поиск, этим вы избавите тему от флуда!

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:29 13-10-2013 | Исправлено: boss911, 03:15 07-11-2024
Gnom3



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sjwrec
запуск почти минуту, видеопамять показывает в 4 раза больше, чем есть на самом деле.

Всего записей: 864 | Зарегистр. 14-11-2010 | Отправлено: 13:01 08-12-2013
sjwrec



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Gnom3
Инициализация теперь и правда достаточно долгая.
Видеопамять берётся из отчёта dxdiag, что там написано то и показывает.
Наверно ещё учитывается память которую видеокарта берёт из ОЗУ для расширения памяти.  
 
На какой системе проверяли?
 
И да кстати, спасибо что протестировали.

Всего записей: 473 | Зарегистр. 01-10-2010 | Отправлено: 13:14 08-12-2013 | Исправлено: sjwrec, 13:20 08-12-2013
Habib2302



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sjwrec
win 7 ultimate x64
я выбрал дискретную видеокарту (nvidia gf gt540m 1 gb) и инсталлятор показывает
Intel(R) HD Graphics Family 2722 mb
выбрал встроенную видеокарту (Intel(R) HD Graphics Family 1 809 mb) и инсталлятор показывает
Intel(R) HD Graphics Family 1 696 mb

Всего записей: 533 | Зарегистр. 09-05-2012 | Отправлено: 13:25 08-12-2013
Gnom3



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sjwrec
ОС 8.1, видеокарта системную память не использует. ДХдиаг у меня тоже неправильно видеопамять кажет, так что это плохой вариант.

Всего записей: 864 | Зарегистр. 14-11-2010 | Отправлено: 13:33 08-12-2013
sjwrec



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Habib2302
А в диспетчере устройств обои видеокарты видно?
 
Просто обычно дискретная видеокарта включается в работу только когда приложение (игры) требует высокопроизводительную графику.
 
Две видеокарты по 1 ГБ - это что ноутбук такой или что?
 
Теперь я точно уверен, что видеопамять показывает вместе с выделенной из ОЗУ памятью.
 
Всё равно спасибо что протестировали.
 
 
Gnom3
Ну не совсем так.  
Зайдите в Разрешение экрана - Дополнительные параметры,  
и там ясно видно в графе:  
 
Доступно графической памяти: Видеопамять + выделенная из ОЗУ.
 
Используется видеопамяти: Только видеопамять.
 
Ну вот вариант с библиотеками, с моей видеокартой не проходит.
Каждая библиотека выдаёт: - 1096 МБ
 
Поэтому этот для меня лучше.  

Всего записей: 473 | Зарегистр. 01-10-2010 | Отправлено: 13:36 08-12-2013 | Исправлено: sjwrec, 13:44 08-12-2013
Gnom3



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sjwrec
У меня не выделяется память из озу.
доступно графической памяти- 8 гиг,  
используется видеопамяти - 1024 - ровно столько у меня и есть
системной видеопамяти - 0 это я так понимаю, сколько от системы берет.

Всего записей: 864 | Зарегистр. 14-11-2010 | Отправлено: 14:45 08-12-2013 | Исправлено: Gnom3, 14:46 08-12-2013
Tapas77789



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ПАример... Пример...

Всего записей: 70 | Зарегистр. 26-05-2008 | Отправлено: 16:00 08-12-2013
Habib2302



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Tapas77789
помоги объеденить два кода

Код:
 Procedure CurPageChanged(CurPageID: Integer);
 Begin
   Case CurPageID of
   wpSelectDir: if WizardForm.Tag = 1 then
   begin
     WizardForm.SelectDirPage.Notebook.ActivePage:= WizardForm.SelectComponentsPage;
     WizardForm.PageNameLabel.Caption:= SetupMessage(msgWizardSelectComponents);
     WizardForm.Hint:= WizardForm.PageDescriptionLabel.Caption; SetupMessage(msgSelectDirDesc)
     WizardForm.PageDescriptionLabel.Caption:= SetupMessage(msgSelectComponentsDesc);
   end;
   wpSelectComponents: if WizardForm.Tag = 1 then
   begin
     WizardForm.NextButton.Caption:= SetupMessage(msgButtonInstall);
     WizardForm.SelectComponentsPage.Notebook.ActivePage:= WizardForm.SelectDirPage;
     WizardForm.DiskSpaceLabel.Caption:= WizardForm.ComponentsDiskSpaceLabel.Caption;
     WizardForm.PageNameLabel.Caption:= SetupMessage(msgWizardSelectDir);
     WizardForm.PageDescriptionLabel.Caption:= WizardForm.Hint;  
     WizardForm.ComponentsList.OnClickCheck:=@CompLstOnClik;
   if IsComponentSelected('AIDA64\instal\1') then
   begin
     WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA641}';
     WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA641}';
   end else
   if IsComponentSelected('AIDA64\instal\2') then
   begin
     WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA642}'
     WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA642}'
   end else
   if IsComponentSelected('AIDA64\instal\3') then
   begin
     WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultDirName")}')) + '{#AIDA643}'
     WizardForm.GroupEdit.Text := AddBackslash(ExpandConstant('{#SetupSetting("DefaultGroupName")}')) + '{#AIDA643}'
     end else
     if IsComponentSelected('AIDA64\Portable\1') then
   begin
     WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{src}')) + '{#AIDA641}';
   end else
   if IsComponentSelected('AIDA64\Portable\2') then
   begin
     WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{src}')) + '{#AIDA642}'
   end else
   if IsComponentSelected('AIDA64\Portable\3') then
   begin
     WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{src}')) + '{#AIDA643}'
   end;
   end;
   end;
  end;
 

с

Код:
procedure CurPageChanged(CurPageID: Integer);
begin
  if CurPageID = wpSelectComponents then
  begin
    WizardForm.ComponentsList.OnClickCheck:=@CompOnCheckClick;
  end;
end;

Всего записей: 533 | Зарегистр. 09-05-2012 | Отправлено: 16:13 08-12-2013 | Исправлено: Habib2302, 16:15 08-12-2013
sjwrec



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Habib2302
 
Не получится. Один и тотже элемент не может использовать разные вызовы функций.
 
WizardForm.ComponentsList.OnClickCheck:=@CompLstOnClik;
 
и
 
WizardForm.ComponentsList.OnClickCheck:=@CompOnCheckClick;
 
Но вы можете объединить действия в одной функции, если это для вас подходит.
В противном случае никак.

Всего записей: 473 | Зарегистр. 01-10-2010 | Отправлено: 16:27 08-12-2013 | Исправлено: sjwrec, 16:30 08-12-2013
Habib2302



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sjwrec
а если так  

Код:
WizardForm.ComponentsList.OnClickCheck:=@CompLstOnClik and @CompOnCheckClick;

Всего записей: 533 | Зарегистр. 09-05-2012 | Отправлено: 16:33 08-12-2013
sjwrec



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Habib2302
 
Попробуйте но скорее всего выдаст ошибку, ибо это не правильно.

Всего записей: 473 | Зарегистр. 01-10-2010 | Отправлено: 16:36 08-12-2013
Habib2302



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sjwrec
выдал ошибку  
 

Всего записей: 533 | Зарегистр. 09-05-2012 | Отправлено: 16:42 08-12-2013
sjwrec



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Habib2302
Что и требовалось доказать.
 
Что выполняют эти функции, каждая?
 
Может их можно просто объединить в одну и выполнятся они будут одновременно.

Всего записей: 473 | Зарегистр. 01-10-2010 | Отправлено: 16:45 08-12-2013 | Исправлено: sjwrec, 16:46 08-12-2013
Habib2302



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Может их можно просто объединить в одну и выполнятся они будут одновременно.

и как?
и еще.я взял оставил только @CompLstOnClik и по прежнему выдает одну и ту же ошибку

Всего записей: 533 | Зарегистр. 09-05-2012 | Отправлено: 16:48 08-12-2013 | Исправлено: Habib2302, 16:54 08-12-2013
sjwrec



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Habib2302
 
Ну не совсем одновременно, но одна за одной. Нужно лишь просто соединить их:
 
Function CompLstOnClik
begin
 
// здесь функция 1
 
end;
 
begin
 
// здесь функция 2
 
end;
 
end;
 
Примерный набросок.
но если хотите скинте мне их обои и я гляну можно ли их соединить.

Всего записей: 473 | Зарегистр. 01-10-2010 | Отправлено: 16:54 08-12-2013
Habib2302



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sjwrec
Первый Скрипт
Второй скрипт

Всего записей: 533 | Зарегистр. 09-05-2012 | Отправлено: 17:07 08-12-2013 | Исправлено: Habib2302, 17:08 08-12-2013
Gnom3



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Habib2302

Цитата:
WizardForm.ComponentsList.OnClickCheck:=@CompOnCheckClick;
и WizardForm.ComponentsList.OnClickCheck:=@CompLstOnClik;  

Это делается так:

Код:
WizardForm.ComponentsList.OnClickCheck:=@CompOnCheckClick;

сперва описание CompLstOnClik, следом CompOnCheckClick, внутри которй вызываешь CompLstOnClik(Sender);
В любом, нужном тебе месте. тоесть как-то так:
 
Код

Всего записей: 864 | Зарегистр. 14-11-2010 | Отправлено: 17:25 08-12-2013 | Исправлено: Gnom3, 17:26 08-12-2013
sjwrec



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Habib2302
Что-то я не понял, а где вторая функция? В первом скрипте её нет.

Всего записей: 473 | Зарегистр. 01-10-2010 | Отправлено: 17:32 08-12-2013
Habib2302



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sjwrec
извените. скрипт со второй функцией взят с этого поста http://forum.ru-board.com/topic.cgi?forum=5&topic=46338&start=160#6
WizardForm.ComponentsList.OnClickCheck:=@CompLstOnClik;
 
Добавлено:
Tapas77789
одно и тоже!!

Всего записей: 533 | Зарегистр. 09-05-2012 | Отправлено: 17:34 08-12-2013 | Исправлено: Habib2302, 17:45 08-12-2013
Tapas77789



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скрипт

Всего записей: 70 | Зарегистр. 26-05-2008 | Отправлено: 19:41 08-12-2013
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153

Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup: создание инсталляционных пакетов (Часть 15)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru