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

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

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

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

Ветеран


Contributor


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


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

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


Изменения
Автор: Vadikan
Дата: 22-05-2012
Описание: Закрыто
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
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. Помощь и советы [часть 5]

Отправлено: 18:01, 29-08-2011

 

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

Ветеран


Contributor


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

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


Цитата Gugle:
Необходим пример чтения xml файла »
Gugle, пример xml никуда не годится, исправил на такой:
читать дальше »

PHP код: Выделить весь код

<root>

    <
element_1></element_1>
    <
element_11></element_11>
    <
element_12>
        <
element_121 attr1='121.1' attr2='121.2' attr3='121.3'></element_121>
        <
element_122 attr1='122.1' attr2='122.2' attr3='122.3'></element_122>
        <
element_123 attr1='123.1' attr2='123.2' attr3='123.3'></element_123>
    </
element_12>
    <
element_13></element_13>
    <
element_2>
        <
element_21></element_21>
        <
element_22></element_22>
        <
element_23></element_23>
    </
element_2>
    <
element_3></element_3>
 </
root



Парсер будет сильно зависеть от самого xml, нужные ноды могут быть где угодно в иерархии, с/без аттрибутами. Для данного примера скрипт может быть такой:
Код: Выделить весь код
...
objXMLDoc := CreateOleObject('Microsoft.XMLDOM');  //создаем объект
  objXMLDoc.async := False;  //синхронный режим
  objXMLDoc.load('d:\Program Files\Inno Setup 5\Projects\test\Output\test.xml');   //грузим файл
  XMLPath := '//root/element_12';  //выделяем нужные ноды. Эта строка может быть очень большой
  if objXMLDoc.parseError.errorCode <> 0 then Exit; //если структура файла не xml, выходим
  objNodes := objXMLDoc.selectNodes(XMLPath); //получаем список нод в зависимости от ранее заданного XMLPath
  if objNodes.length > 0 then for i := 0 to objNodes.Length-1 do //в данном случае нода будет всего лишь одна
    if objNodes.item[i].hasChildNodes then  //если нода имеет дочерние ноды,...
      for j := 0 to objNodes.item[i].childNodes.length-1 do //... то для всех детей...
      begin
        MsgBox(objNodes.item[i].childNodes.item[j].nodeName, mbInformation, MB_OK); //...выводим имя дочерней ноды,
        for k := 0 to objNodes.item[i].childNodes.item[j].attributes.length-1 do
        begin
          MsgBox(objNodes.item[i].childNodes.item[j].attributes.item(k).name, mbInformation, MB_OK); //...названия ее аттрибутов
          MsgBox(objNodes.item[i].childNodes.item[j].attributes.item(k).value, mbInformation, MB_OK); //...и значения аттрибутов
        end;
      end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:53, 10-11-2011 | #111



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

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


Забанен


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

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


Проблема, при установке не записываются записи реестра, как решить?
В общем
Код: Выделить весь код
; Служба 2
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\Служба; ValueType: string; ValueName: DisplayName; ValueData: Служба; Flags: uninsdeletekey
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\Служба; ValueType: string; ValueName: ObjectName; ValueData: LocalSystem; Flags: uninsdeletekey
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Services\Служба\Enum; ValueType: string; ValueName: 0; ValueData: Root\LEGACY_СЛУЖБА_SERVICE\0000; Flags: uninsdeletekey
записываются нормально, а

Код: Выделить весь код
[Registry]
; Служба 1
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Enum\Root\LEGACY_СЛУЖБА_SERVICE\0000; ValueType: string; ValueName: Service; ValueData: Служба; Flags: uninsdeletekey
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Enum\Root\LEGACY_СЛУЖБА_SERVICE\0000; ValueType: string; ValueName: Class; ValueData: LegacyDriver; Flags: uninsdeletekey
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Enum\Root\LEGACY_СЛУЖБА_SERVICE\0000; ValueType: string; ValueName: DeviceDesc; ValueData: Служба; Flags: uninsdeletekey
Root: HKLM; SubKey: SYSTEM\CurrentControlSet\Enum\Root\LEGACY_СЛУЖБА_SERVICE\0000\Control; ValueType: string; ValueName: ActiveService; ValueData: Служба; Flags: uninsdeletekey
не хочет, пишет Отказано в доступе, что делать?

P.S
Цитата valyok666:
так что харе флуд разводить »
Сам же спрашивает, а потом ещё говорит харе флудить.valyok666, krutx, вы оба могли бы и через ПМ об этом поспорить.

Последний раз редактировалось Devils Night, 13-11-2011 в 21:49. Причина: Перенёс пост

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

Отправлено: 19:36, 10-11-2011 | #112


Аватара для Rikill

Старожил


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

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


Devils Night, попробуй в конце строчек добавить это:
Код: Выделить весь код
Permissions: full

-------
"Око за око приведёт к слепоте мира"- Ганди

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

Отправлено: 20:18, 10-11-2011 | #113


Забанен


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

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


Цитата Rikill:
попробуй в конце строчек добавить»
Не работает, пишет ошибку: Parameter "Permissions" includes a malformed value "full"

Последний раз редактировалось Devils Night, 20-05-2012 в 05:08.


Отправлено: 01:00, 11-11-2011 | #114


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


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

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


друзья! подскажите пожалуйста что значит в секции Files флаг Flags: ignoreversion gacinstall
ну ignoreversion понятно, а вот что такое gacinstall? для чего это надо и в каких случаях может знает кто

Отправлено: 16:09, 11-11-2011 | #115


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


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

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


У меня такой вопрос что нужно написать в скрипте чтобы...
Он устанавливал дополнительные программы перед установкой главной программы..
Ну что то типо: запустил Setup.exe; Нажал далее выбрал директорию типо началась установка, но сначала вылетело окно с directx установкой... (типо установите сначала это)..

Отправлено: 19:19, 11-11-2011 | #116


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


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

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


как сделать сильное сжатие (используя только инно)
у меня в скрипте параметры сжатия
Код: Выделить весь код
Compression=lzma2/ultra64
 LZMAMatchFinder=BT 
LZMAUseSeparateProcess=true 
LZMANumFastBytes=273 
LZMADictionarySize=131072 
InternalCompressLevel=ultra64
 SolidCompression=true 
MergeDuplicateFiles=true

Отправлено: 21:13, 11-11-2011 | #117


Аватара для Rikill

Старожил


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

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


krutx, ну всё. Максимум.
derfyt , почему бы не сделать установку direct x обязательной после установки программы? С помощью секции [run]?

-------
"Око за око приведёт к слепоте мира"- Ганди


Отправлено: 21:42, 11-11-2011 | #118


Ветеран


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

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


вот мой скрипт переделанный valyok666 может кому надо готовый скрипт для CODMW3
http://rghost.ru/29571811
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:42, 11-11-2011 | #119


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


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

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


insombia,
В секции [*run]
измени на это
-------------------------
Check: CheckError and SoftCheck
Не будет окон ошибок установки DirectX VC++ и т.д
-------------------------
И кнопку далее на странице SelectDirPage преименуй на "Установить" а то юзверь будет думать, что имеется еще какойнить шаг перед установкой.
-------------------------
Это сообщение посчитали полезным следующие участники:

Отправлено: 00:00, 12-11-2011 | #120



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Test ferget Тест-форум 0 24-08-2011 01:25
test ! ! Aaa ! ! Тест-форум 0 23-04-2011 11:29
test Santa aka Snt Тест-форум 0 16-04-2011 22:35
test xolod. Программное обеспечение Linux и FreeBSD 0 19-04-2009 21:03
Test memory KEugeNik Хочу все знать 11 23-11-2003 23:11




 
Переход