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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
CKILL

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
boss911
Раньше тоже использовал подобный код. Не надёжный и не стабильный, глючный вообщем)) Забил. Ноо... нашёл в интернете маленькую, простую утилиту syspin.exe , пробуйте, работает стабильно(win 7+). Есть похожая PinTo10v2.exe , но я её не тестил. ( syspin хватает).

Всего записей: 197 | Зарегистр. 17-02-2009 | Отправлено: 17:43 05-11-2017
boss911



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CKILL
 
Спасибо, буду иметь в виду. Хотелось встроенного решения. Мне проще убрать этот код, коль он не работает в Win8+, все равно не такая уж и полезная фича в ОС (особенно закрепление на таскбаре, а в Пуске вырезали), приделал ее ради того, чтобы было.
 
Я заметил, что в этом коде сделана проверка версии ОС для ресурсов 5381 и 5382. Если 'GetWindowsVersion < $06020000' (меньше win8), то работа функции PinToTaskbar полностью прекращается или только отключается та часть, которая отвечает за закрепления в меню Пуск?
 
Добавлено:
syspin.exe работает, выходит, что причина в коде, нужно допиливать для работы на win8+.

Всего записей: 3757 | Зарегистр. 29-01-2005 | Отправлено: 19:39 05-11-2017 | Исправлено: boss911, 23:39 05-11-2017
ultimo



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

Цитата:
Если 'GetWindowsVersion < $06020000' (меньше win8), то работа функции PinToTaskbar полностью прекращается или только отключается та часть, которая отвечает за закрепления в меню Пуск?  

Если версия Windows < 8, то произойдет выход из функции, т.е. код работать не будет

Всего записей: 177 | Зарегистр. 19-05-2012 | Отправлено: 16:48 07-11-2017
boss911



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ultimo
 
Я вот про эту часть в коде:

Код:
 if TaskBar then iRes := 5386 else  
        begin  
          if (GetWindowsVersion < $06020000) then iRes := 5381 else // String resource in Win 8\8.1 is not exist  
            Exit;  
        end;  
    end else if TaskBar then iRes := 5387 else  
        begin  
          if (GetWindowsVersion < $06020000) then iRes := 5382 else // String resource in Win 8\8.1 is not exist  
            Exit;  
        end;  

Ресурс 5381 и 5382 (shell32.dll.mui) отвечает за закрепление и открепление в Пуске. Если Windows < 8,  то происходит выход из функции PinToTaskbar, как вы сказали, все правильно, ибо такой возможности в win8 нет. Но ведь остается же еще закрепление и открепление на панели задач, зачем же закрывать функцию, если она еще не выполнила второе действие, которое предусмотрено в Windows >= $06000000 (Vista)? Не логично. Или это сделано специально, так как код (закрепление и открепление на панели задач) все равно не работает на win8 и выше? Все равно, было бы правильней сделать, не считывать ресурсы 5381 и 5382, если Windows >= 8, а не глушить сразу всю функцию, имхо.

Всего записей: 3757 | Зарегистр. 29-01-2005 | Отправлено: 19:53 07-11-2017
CKILL

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
boss911
Вот кусок кода, что я использовал. Брал на oszone.

Всего записей: 197 | Зарегистр. 17-02-2009 | Отправлено: 07:52 08-11-2017 | Исправлено: CKILL, 07:55 08-11-2017
boss911



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CKILL
 
Код с oszone я пробовал, он почти такой же, как тут, как я уже сказал, не нашел в сети рабочего кода под Win8/10.

Всего записей: 3757 | Зарегистр. 29-01-2005 | Отправлено: 14:52 08-11-2017
CKILL

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
boss911
Используйте syspin.exe вот пример

Всего записей: 197 | Зарегистр. 17-02-2009 | Отправлено: 17:41 08-11-2017
boss911



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

Код:
[Setup]  
RawDataResource=

А вот этот параметр впервые вижу. Он в официальной версии поддерживается, потому что в хелпе его нет? Не компилит официальный 5.5.9 (unicode), а расширенная версия не мое. Судя по названию, параметр включает в ресурсы инсталлятора и деинсталлятора файл (бинарник), который потом может и извлечь из своих ресурсов во время инсталляции и деинсталляции?

Всего записей: 3757 | Зарегистр. 29-01-2005 | Отправлено: 22:54 08-11-2017
CKILL

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

Цитата:
расширенная версия не мое

Хммм... Ну... Ладно... Тогда "класика" ExtractTemporaryFile.

Цитата:
извлечь из своих ресурсов во время инсталляции и деинсталляции?

Да.
 

Всего записей: 197 | Зарегистр. 17-02-2009 | Отправлено: 07:57 09-11-2017
boss911



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

Код:
Тогда "класика" ExtractTemporaryFile.

Эта "классика", в нашем случае, позволит воспользоваться утилитой syspin.exe в процессе инсталляции. А как же быть с деинсталляцией? Для деинсталляции нужно будет где-то хранить syspin.exe, что совсем не айс. Классика - не вариант. Короче, в топку это закрепление, ярлык на панели пуска как рулил, так и рулит, имхо.

Всего записей: 3757 | Зарегистр. 29-01-2005 | Отправлено: 16:14 10-11-2017
ultimo



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

Цитата:
нужно будет где-то хранить syspin.exe, что совсем не айс

Что такого криминального? Ну пускай лежит рядом с деинсталлятором в скрытом виде...

Всего записей: 177 | Зарегистр. 19-05-2012 | Отправлено: 16:26 10-11-2017
boss911



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

Цитата:
Что такого криминального?

Ничего. Но хранить утилиту, которая не имеет ни какого отношения к основной программе (ее дистрибутиву), которая была развернута этим инсталлятором, которая нужна только деинсталлятору, чтобы только подтереть "ярлык", для меня не комильфо. Нет рабочего кода, значит, для меня вопрос закрыт.

Всего записей: 3757 | Зарегистр. 29-01-2005 | Отправлено: 17:33 10-11-2017
MisterMyth

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть ли возможность создать веб установщик?
Inno в стандартной комплектации сжимает лучше всех?
Есть программы аналогичные, которые лучше сжимают?

Всего записей: 1066 | Зарегистр. 03-01-2015 | Отправлено: 18:47 11-11-2017
ultimo



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MisterMyth
1) Да
2) Нет
3) Да

Всего записей: 177 | Зарегистр. 19-05-2012 | Отправлено: 18:52 11-11-2017
MisterMyth

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ultimo
 
Пример можно, что лучше сжимает? А то установка пухнет, и заливает ее в интернет все сложнее.

Всего записей: 1066 | Зарегистр. 03-01-2015 | Отправлено: 19:33 11-11-2017
ultimo



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MisterMyth
7z, FreeArc к примеру. Ну и потребуется писать скрипт для распаковки. Или искать

Всего записей: 177 | Зарегистр. 19-05-2012 | Отправлено: 19:38 11-11-2017
MisterMyth

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ultimo та нет же. я о другом. если использовать максимальное сжатие стандартное, то inno сжимает лучше всех? Лучше, чем nsis?

Всего записей: 1066 | Зарегистр. 03-01-2015 | Отправлено: 08:17 12-11-2017
codecs



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
они оба используют LZMA2 и поэтому особой разницьі не будет. Гораздо больше можно ужать правильной очередью файлов в инсталляторе - т.е. размещать файльі со схожим типом данньіх рядом друг-с-другом

Всего записей: 2116 | Зарегистр. 22-07-2003 | Отправлено: 12:14 12-11-2017
V0lt



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Изредка наблюдаю ситуацию, когда LZMA лучше по сжатию, чем LZMA2.
Еще был момент, когда упаковщик LZMA2 вылетал из-за того, что выделял шибко много памяти. Причем исходные файлы занимали около 20 МБ.

Всего записей: 10779 | Зарегистр. 05-02-2003 | Отправлено: 12:40 12-11-2017 | Исправлено: V0lt, 12:51 12-11-2017
MisterMyth

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

Всего записей: 1066 | Зарегистр. 03-01-2015 | Отправлено: 14:20 12-11-2017 | Исправлено: MisterMyth, 14:58 12-11-2017
Открыть новую тему     Написать ответ в эту тему

Страницы: 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