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

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

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

Ветеран


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


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

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


Изменения
Автор: jameszero
Дата: 08-11-2010
Описание: тема закрыта
Лимит страниц.
Тема закрыта.
Продолжение по ссылке Скрипты Inno Setup. Помощь и советы [часть 3]




Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;
    Предыдущая версия: 5.3.0 [07.04.2009] - Скачать (зеркало) | Русификатор (зеркало);

  • Inno Script Generator - ещё один редактор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать;

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы. Официальный сайт - недоступен.
    Последняя версия: 2.0.8 [12.11.2006] - Страница с зеркалами;

  • 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.3 [11.09.2009] - Скачать;


Ссылка на архив предыдущей темы (также можно скачать из вложения)

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


Отправлено: 22:06, 23-08-2009

 

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

Ветеран


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

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


Цитата tupica:
Подскажите пожалуйста, как сделать деинсталлятор с выбором деинсталируемых компонентов. »
Интересный вопрос. Штатной такой особенности я не видел. Напишите на форуме разрабов инно - может добавят.
Я бы сделал такой деинсталлер как еще один инсталлер инно, который вытирал бы файлы и ключи реестра без добавления записей в секцию "установки программ".
Для затравки способ поубирать все ненужные окна (из коллекции скриптов в шапке темы)
Код: Выделить весь код
Попробовать в разделе [Setup] выставить разные DisableProgramGroupPage=yes, DisableDirPage=yes, DisableFinishedPage=yes, DisableReadyPage=yes, DisableStartupPrompt=yes. Выбирай, что из этого нужно. 
Если надо, чтобы совсем без диалогов, щелкнул по сетапу и все, то: 

[Setup] 
AppName=My Program 
AppVerName=My Program 1.5 
DefaultDirName={pf}\My Program 
DisableDirPage=yes 
DisableProgramGroupPage=yes 
DisableReadyPage=yes 
DisableFinishedPage=yes 
OutputBaseFilename=setup 
Compression=lzma 
SolidCompression=yes 


[Files] 
Source: "C:\My Program\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs 

[_Code] 
procedure CurPageChanged(CurPageID: Integer); 
begin 
If CurPageID=wpWelcome then 
begin 
SendMessage(WizardForm.NEXTBUTTON.Handle, 513, 0, 0) 
SendMessage(WizardForm.NEXTBUTTON.Handle, 514, 0, 0) 
end; 
end;
В секцию [Setup] надо дописать Uninstallable=false - прожка не появится в секции "установка и удаление программ"

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


Последний раз редактировалось R.i.m.s.k.y., 06-08-2010 в 12:14.

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

Отправлено: 11:56, 06-08-2010 | #2181



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

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


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

Ветеран


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

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


Что-то затихло здесь. Оживлю форум своим вопросом, может тупым, но этот вопрос для меня умный.
Вопрос: есть вот такой список компонентов:
Код: Выделить весь код
Name: pl; Description: Плееры; Types: full;
Name: pl\kmp; Description: The KMPlayer 2.9.4.1437; Types: full recom
Name: pl\gom; Description: GOM Player 2.1.23.5007 Rus; Types: full
Name: pl\mpc; Description: Media Player Classic Home Cinema 1.3.1249.0; Types: full
Name: pl\mpc\mpcdxva; Description: Аппаратное ускорение воспроизведения h264 и VC-1; Flags: checkablealone dontinheritcheck
Name: pl\fl; Description: Зарегестрировать файлы на:; Types: full recom
Name: pl\fl\kmp; Description: The KMPlayer; Flags: exclusive; Types: full recom
Name: pl\fl\gom; Description: GOM Player; Flags: exclusive
Name: pl\fl\mpc; Description: Media Player Classic Home Cinema; Flags: exclusive
Список плееров для установки и на какой плеер регистрировать файлы. Как сделать так, чтобы при выборе к установке плеера MPC нельзя было зарегить файлы на GOM и KMP???

Еще вопросик - есть и облегченная версия этого дистра - без плееров. Каждый раз немного напрягает по всему коду вырезать руками Components: pl. Можно ли как то поставить условие в скрипте на облегченный дистр - IsLite=1 и все Components: pl не включались в итоговый лайт-дистр?

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


Отправлено: 08:25, 11-08-2010 | #2182


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


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

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


Помогите пожалуйста


Отправлено: 13:01, 14-08-2010 | #2183


Старожил


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

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


moov1kk у тебя нет процессора вот скачай http://files.jrsoftware.org/ispack/ispack-5.3.10.exe при установки поставь галочки

Отправлено: 13:35, 14-08-2010 | #2184


Аватара для маркузяка

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


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

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


я тут попробовал использовать вот этот скрипт


[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
OutputDir=.
Compression=lzma/ultra
InternalCompressLevel=ultra
SolidCompression=yes

[Languages]
Name: rus; MessagesFile: compiler:Languages\Russian.isl

[Files]
Source: compiler:Libraries\get_hw_caps.dll; Flags: dontcopy

[code]
function GetHardDriveFreeSpace(hdd: integer): Integer;
external 'hwc_GetHardDriveFreeSpace@files:get_hw_caps.dll stdcall';
function GetHardDriveName(hdd: integer): PChar;
external 'hwc_GetHardDriveName@files:get_hw_caps.dll stdcall';
function GetHardDriveTotalSpace(hdd: integer): Integer;
external 'hwc_GetHardDriveTotalSpace@files:get_hw_caps.dll stdcall';
function GetHardDrivesCount(): Integer; external 'hwc_GetHardDrivesCount@files:get_hw_caps.dll stdcall';

function InitializeSetup(): Boolean;
var
i, count: Integer;
msg: string;
begin
count:= GetHardDrivesCount();
msg:= 'Количество дисков: ' + IntToStr(count) + #13;
for i:= 0 to count - 1 do
msg:= msg + 'Размер: ' + GetHardDriveName(i) + ' - ' +
IntToStr(GetHardDriveTotalSpace(i)) + ' Мб' +
', своб.: ' + IntToStr(GetHardDriveFreeSpace(i)) + ' Мб' +#13;
MsgBox(msg, mbInformation, MB_OK);
end;

на версии от restools вылезела ошибка

почему и как исправить?

P.S. скрипт отсюда

-------
ICQ - 498863759
Просто так даже муха на говно не садится!


Отправлено: 17:19, 14-08-2010 | #2185


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


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

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


vint56 большое спасибо

Отправлено: 20:45, 14-08-2010 | #2186


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


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

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


маркузяка, ХЗ у меня робит:

Отправлено: 23:59, 14-08-2010 | #2187


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


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

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


Народ, простите за возможно тупой вопрос, но мне просто довольно лень лазить по 219 страницам форума
Мну нужен код для изменения положения кннопок далее, назад и т.д. и строки где указываеться путь установки, заранее благодарю...

Отправлено: 01:15, 15-08-2010 | #2188


Аватара для Habetdin


Автор проектов


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

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


маркузяка, замените PChar на PAnsiChar:
Код: Выделить весь код
[Code]
function GetHardDriveFreeSpace(hdd: integer): Integer;
  external 'hwc_GetHardDriveFreeSpace@files:get_hw_caps.dll stdcall';
function GetHardDriveName(hdd: integer): PAnsiChar;
  external 'hwc_GetHardDriveName@files:get_hw_caps.dll stdcall';
function GetHardDriveTotalSpace(hdd: integer): Integer;
  external 'hwc_GetHardDriveTotalSpace@files:get_hw_caps.dll stdcall';
function GetHardDrivesCount(): Integer; external 'hwc_GetHardDrivesCount@files:get_hw_caps.dll stdcall';

function InitializeSetup(): Boolean;
var
  i, count: Integer;
  msg: string;
begin
  count:= GetHardDrivesCount();
  msg:= 'Количество дисков: ' + IntToStr(count) + #13;
  for i:= 0 to count - 1 do
    msg:= msg + 'Размер: ' + GetHardDriveName(i) + ' - ' +
      IntToStr(GetHardDriveTotalSpace(i)) + ' Мб' +
         ', своб.: ' + IntToStr(GetHardDriveFreeSpace(i)) + ' Мб' +#13;
  MsgBox(msg, mbInformation, MB_OK);
end;
Цитата alex2010:
у меня робит »
У вас ansi-версия компилятора

-------
Рекомендую: $25 на тест виртуального сервера (VPS) за регистрацию по ссылке

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

Отправлено: 05:42, 15-08-2010 | #2189


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

Ветеран


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

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


народ, а мне кто нить подскажет?

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


Отправлено: 08:23, 16-08-2010 | #2190



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 3] Serega Автоматическая установка приложений 3755 26-10-2011 17:58
[архив] Inno Setup .:[все вопросы]:. Mchik Автоматическая установка приложений 1329 23-08-2009 20:13
[архив - Часть 2] AutoIt скрипты Vadikan AutoIt 985 21-01-2008 09:58
Скрипты Inno Setup Compiler QAZAK Автоматическая установка приложений 7 15-01-2007 17:59
[Архив - Часть 1.1] AutoIt скрипты EgOrus AutoIt 335 04-02-2006 16:58




 
Переход