|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » [архив] Скрипты Inno Setup. Помощь и советы [часть 2] |
|
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]
|
Ветеран Сообщения: 1133 |
Профиль | Отправить PM | Цитировать
Лимит страниц.
Тема закрыта. Продолжение по ссылке Скрипты Inno Setup. Помощь и советы [часть 3] Внимание! Данная тема предназначена только для обсуждения написания скриптов ! Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Ссылка на архив предыдущей темы (также можно скачать из вложения) |
|
------- Отправлено: 22:06, 23-08-2009 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Добрый день! У меня возникла небольшая проблема в понимании языка структуры Source в Inno Setup.
Дело в том, что первое окно установки у меня создано посредством скрипта (code), где имеется edit_box. Мне нужно продумать 2 варианта: если в edit_box введено правильное выражение, то в Source необходимо копировать файлы для полной версии программы; если же edit_box пустое или неверное, то устанавливать файлы демо-версии. Вопрос в том, как реализовать этот if и какова структура Source? Например, Source: "{code:version}/*.dll"; DestDir: "{app}\Programs" т.е. тут возможны либо "Full/*.dll", либо "Demo/*.dll" (эти папки уже созданы, и в них лежат соответствующие файлы). |
Отправлено: 12:59, 15-06-2010 | #1941 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 66
|
Профиль | Отправить PM | Цитировать Cinot, ну, например, так (добавьте к своему скрипту):
|
Отправлено: 00:23, 16-06-2010 | #1942 |
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Цитата Cinot:
[_Code] Function MyCheck():boolean; Begin //проверка что-то где-то введено End; Примерно так. Если MyCheck возвращает True, то строчка с Check: MyCheck выполняется, если MyCheck возвращает False, то строчка с Check: MyCheck пропускается |
|
------- Отправлено: 08:42, 16-06-2010 | #1943 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Извините, а более полного примера у Вас не найдётся? У меня что-то ничего не получается сделать на основе этого
|
Отправлено: 11:33, 16-06-2010 | #1944 |
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Цитата Cinot:
[Files] Source: "MYPROG.EXE"; DestDir: "{app}"; Check: MyProgCheck Source: "A\MYFILE.TXT"; DestDir: "{app}"; Check: MyDirCheck(ExpandConstant('{app}\A')) Source: "B\MYFILE.TXT"; DestDir: "{app}"; Check: DirExists(ExpandConstant('{app}\B')) [_Code] var MyProgChecked: Boolean; MyProgCheckResult: Boolean; function MyProgCheck(): Boolean; begin if not MyProgChecked then begin MyProgCheckResult := MsgBox('Do you want to install MyProg.exe to ' + ExtractFilePath(CurrentFileName) + '?', mbConfirmation, MB_YESNO) = idYes; MyProgChecked := True; end; Result := MyProgCheckResult; end; function MyDirCheck(DirName: String): Boolean; begin Result := DirExists(DirName); end; [Components] Name: mpc; Description: Настройки Media Player Classic Home Cinema; Check: mpcexists [_Code] function mpcexists(): Boolean; Var MPCPath: string; begin RegQueryStringValue(HKLM, 'SOFTWARE\Gabest\Media Player Classic','ExePath', MPCPath); if FileExists (MPCPath) then Result := True else Result := False; end; |
|
------- Отправлено: 11:59, 16-06-2010 | #1945 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Спасибо, очень помогло!
|
Отправлено: 15:17, 16-06-2010 | #1946 |
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Цитата Cinot:
Офф: а есть подобный форум по Visual Basic? Чтобы с примерами и справкой с чего начать |
|
------- Последний раз редактировалось R.i.m.s.k.y., 16-06-2010 в 16:20. Отправлено: 16:08, 16-06-2010 | #1947 |
Новый участник Сообщения: 36
|
Профиль | Отправить PM | Цитировать Доброго времени суток! Хотелось бы спросить про доп. программное обеспечение игры:
После установки игры DirectX и всякая мелкая дребедень дополнительная копируется в папку с игрой и устанавливается, после чего так и остается там, а можно сделать так, чтобы после установки этих программ их exe-шники автоматически удалялись из папки!? |
Последний раз редактировалось SeDmY, 16-06-2010 в 18:55. Отправлено: 18:29, 16-06-2010 | #1948 |
Старожил Сообщения: 440
|
Профиль | Сайт | Отправить PM | Цитировать SeDmY,
А зачем копировать DirectX и всякую мелкую дребедень в папку с игрой? [Run] Filename: "{src}\DirectX\DXSETUP.exe"; WorkingDir: "{src}\DirectX"; Parameters: "/silent"; Flags: waituntilterminated То есть программа работает из директории установки: {src}, и не копируется в папку назначения {app}. |
Отправлено: 20:08, 16-06-2010 | #1949 |
Новый участник Сообщения: 36
|
Профиль | Отправить PM | Цитировать Цитата nik1967:
Source: E:\Games\Support\DirectX\dxwebsetup.exe; DestDir: {app}; Flags: deleteafterinstall Блин, скрипт выдает мне следующее: Что не так!? |
|
Отправлено: 20:15, 16-06-2010 | #1950 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты 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 |
|