|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 6] |
|
Скрипты Inno Setup. Помощь и советы [часть 6]
|
Ветеран Сообщения: 1273 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: |
|
Отправлено: 19:06, 28-03-2013 |
Пользователь Сообщения: 86
|
Профиль | Отправить PM | Цитировать можно ли чтобы при запуске созданного установщика с ключом выполнялся определённый файл?
а при обычном запуске никаких окон не отображалось, все распаковывалось в временную папку и запускался определенный файл2 (все файлы внутри установщика) |
Отправлено: 15:26, 12-08-2013 | #1001 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 649
|
Профиль | Отправить PM | Цитировать icq99999999,
пример запуска: "setup.exe -run" ------------------------------------------------------ при запуске с этим параметром: 1. извлекаем file1.exe в папку в темпе 2. запускаем его оттуда без ожидания завершения его процесса 3. возвращаем из InitializeSetup() True следствием чего будет инициализация приложения установки при запуске без параметра: 1. извлекаем file2.exe в папку в темпе 2. запускаем его оттуда без ожидания завершения его процесса 3. возвращаем из InitializeSetup() False |
Отправлено: 18:49, 12-08-2013 | #1002 |
Пользователь Сообщения: 86
|
Профиль | Отправить PM | Цитировать Цитата Johny777:
Код: » а если нужно сделать следующее: c запуска ключом: распаковать всё в %temp%\spacep скопировать из папки где находится программа файл comp.ini в папку %temp%\spacep\ запустить файл с параметром %temp%\spacep\1\hidcon.exe -setup.cmd запустить файл с параметром %temp%\spacep\1\hidcon.exe -1бат.bat после завершения hidcon.exe удалить все извлечённые файлы при обычном запуске: распаковать всё в %temp%\spacep скопировать из папки где находится программа файл comp.ini в папку %temp%\spacep\ запустить файл с параметром %temp%\spacep\1\hidcon.exe -1бат.bat после завершения hidcon.exe удалить папку %temp%\spacep\1 запустить %temp%\spacep\set.exe после завершения процесса set.exe скопировать %temp%\spacep\comp.ini и положить рядом с программой удалить все извлечённые файлы. весь процесс должен быть полностью скрыт от глаз пользователя |
Последний раз редактировалось icq99999999, 12-08-2013 в 23:59. Отправлено: 21:40, 12-08-2013 | #1003 |
Пользователь Сообщения: 76
|
Профиль | Отправить PM | Цитировать saurn, И это снова я. В срипте Example_NewCheckListBox радиобуттоны и чекбоксы находятся на компонентслисте, а мне хотелось бы чтобы они были свободными, как в скрипте Прототип (только там задачи), т.к. я на них хочу повесить OneClick (звук wav).
|
Отправлено: 21:49, 12-08-2013 | #1004 |
Ветеран Сообщения: 649
|
Профиль | Отправить PM | Цитировать Nightwishh,
Цитата Nightwishh:
================================================================================= icq99999999, Цитата icq99999999:
нет такой возможности извлечь папку из инсталла не во время установки. Только если извлекать по одному файлу, как в последнем примере. Не знаю сколько файлов лежит в папке spacep, поэтому сделал так: пакуешь папку в 7z архив и кладёшь рядом с экзешником инсталла Исходник с файлами: |
||
Последний раз редактировалось Johny777, 14-02-2014 в 18:39. Отправлено: 03:19, 13-08-2013 | #1005 |
Пользователь Сообщения: 86
|
Профиль | Отправить PM | Цитировать Цитата Johny777:
а всё это сколько? » под всё я имел ввиду содержимое инстала, а поэтому использовать стороннюю утилиту 7z не нужно, вот только как 7z отключить? след вопрос: а можно ли после копирования проверить есть ли файл comp.ini рядом с прогой, если файла нет то копировать его из %temp%\spacep\ в C:\AppData\ а потом скопировать файл "comp.ini" из директории с прогой в %temp%\spacep\ если файла нет то копировать его из C:\AppData\ в %temp%\spacep\ можно ли убрать появляющейся(при запуске) на понели задач окошко в котором написано установка можно ли отключить при компиляции изображение WizModernImage.bmp можно ли чтобы при запуске с ключом файл находящейся внутри инстала распаковывался в %windir%\temp\ а при обычном запуске не распаковывался |
Последний раз редактировалось icq99999999, 13-08-2013 в 21:17. Отправлено: 09:11, 13-08-2013 | #1006 |
Пользователь Сообщения: 76
|
Профиль | Отправить PM | Цитировать Блин, я сам всех и себя запутал. Вообщем есть скрипт Button Sound
[Setup] AppName=My Program AppVerName=My Program v 1.5 DefaultDirName={pf}\My Program DefaultGroupName=My Program OutputDir=. LicenseFile=compiler:License.txt [Files] Source: UI\buttonclick.WAV; Flags: dontcopy Source: UI\buttonclickrelease.WAV; Flags: dontcopy Source: UI\buttonrollover.WAV; Flags: dontcopy [ Code] function sndPlaySound(lpszSoundName: AnsiString; uFlags: cardinal): Integer; external 'sndPlaySoundA@winmm stdcall delayload'; /// функция проигрывания звука procedure PlaySoundOnEnter(Sender: TObject); /// процедура при наведении begin sndPlaySound(ExpandConstant('{tmp}\buttonrollover.WAV'),$0001); end; procedure PlaySoundOnMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); /// при нажатии кнопки begin sndPlaySound(ExpandConstant('{tmp}\buttonclick.WAV'),$0001); end; procedure PlaySoundOnMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); /// при отпускании кнопки begin sndPlaySound(ExpandConstant('{tmp}\buttonclickrelease.WAV'),$0001); end; procedure InitializeWizard; begin ExtractTemporaryFile('buttonclick.WAV'); /// функцией ExtractTemporaryFile извлекаем файл во временную папку - при нажатии кнопри паши по контролу (не путать с кликом) ExtractTemporaryFile('buttonclickrelease.WAV'); /// при отпускании кнопки мыши с контрола ExtractTemporaryFile('buttonrollover.WAV'); /// при наведении with WizardForm do begin with NextButton do begin OnMouseEnter := @PlaySoundOnEnter; OnMouseDown := @PlaySoundOnMouseDown; OnMouseUp := @PlaySoundOnMouseUp; end; with BackButton do begin OnMouseEnter := NextButton.OnMouseEnter; OnMouseDown := NextButton.OnMouseDown; OnMouseUp := NextButton.OnMouseUp; end; with CancelButton do begin OnMouseEnter := NextButton.OnMouseEnter; OnMouseDown := NextButton.OnMouseDown; OnMouseUp := NextButton.OnMouseUp; end; with DirBrowseButton do begin OnMouseEnter := NextButton.OnMouseEnter; OnMouseDown := NextButton.OnMouseDown; OnMouseUp := NextButton.OnMouseUp; end; with GroupBrowseButton do begin OnMouseEnter := NextButton.OnMouseEnter; OnMouseDown := NextButton.OnMouseDown; OnMouseUp := NextButton.OnMouseUp; end; end; end; |
Отправлено: 18:58, 13-08-2013 | #1007 |
Ветеран Сообщения: 510
|
Профиль | Отправить PM | Цитировать Nightwishh через bass вроде можно,но не знаб работает ли без ботвы,так как там есть пример тот что тебе нужен
|
Отправлено: 19:59, 13-08-2013 | #1008 |
Ветеран Сообщения: 649
|
Профиль | Отправить PM | Цитировать icq99999999,
Цитата icq99999999:
![]() Цитата icq99999999:
Цитата icq99999999:
Цитата icq99999999:
Цитата icq99999999:
Можно спрятать: впиши в InitializeWizard это WizardForm.WizardBitmapImage.Hide; Можно пропустить страницу приветствия: [Setup] DisableWelcomePage=yes Цитата icq99999999:
1. если файл должен попасть в темп во время установки то так: [Files] Source: имя_файла; DestDir:{tmp}\; Check: RunWithParam(); 2. если где-то ещё то как в примере отсюда http://forum.oszone.net/post-2200430-1002.html с соответствующей проверкой if RunWithParam() then ExtractTemporaryFile('имя_файла') ================================================================================= Всем Вот пример воспроизведения Wav файлов из памяти - быстрый доступ, быстрее чем с жёсткого диска. Это отдельный пример из кода ниже. Может кому пригодится: =================================================================================================== Nightwishh Цитата Nightwishh:
исходники простого воспроизведения и звука на компонентах: |
|||||||
Последний раз редактировалось Johny777, 16-08-2013 в 12:22. Отправлено: 20:43, 13-08-2013 | #1009 |
Ветеран Сообщения: 1002
|
Профиль | Отправить PM | Цитировать приветствую коллеги.
Хочу обратится за помощью. Можно ли реализовать удаление содержимого каталога, в каталоге {app} без бантика? Например в каталоге {app}\Redist удалить все что находится в каталоге Redist не трогая содержимое {App}? В идеале хотелось бы реализовать через Checkbox, типа "хотите ли вы очистить содержимое каталога Redist" и при отмеченном checkbox что бы происходила очистка. |
------- Отправлено: 11:19, 14-08-2013 | #1010 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 5] | El Sanchez | Автоматическая установка приложений | 1999 | 28-03-2013 19:09 | |
Скрипты Inno Setup. Помощь и советы [часть 4] | El Sanchez | Автоматическая установка приложений | 2099 | 22-05-2012 23:16 | |
Скрипты Inno Setup. Помощь и советы [часть 3] | Serega | Автоматическая установка приложений | 3755 | 26-10-2011 17:58 | |
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] | Serega | Автоматическая установка приложений | 2651 | 08-11-2010 18:34 | |
Скрипты Inno Setup Compiler | QAZAK | Автоматическая установка приложений | 7 | 15-01-2007 17:59 |
|