![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 8] |
|
Скрипты Inno Setup. Помощь и советы [часть 8]
|
Ветеран Сообщения: 1274 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Скрипты Inno Setup. Помощь и советы (Archive Pack 1):
Скрипты Inno Setup. Помощь и советы [часть 6] Скрипты Inno Setup. Помощь и советы [часть 7] |
|
Отправлено: 08:52, 02-02-2015 |
Старожил Сообщения: 169
|
Профиль | Отправить PM | Цитировать habib2302, Заменить команду /DIR на /D
function GetDirFromCMD(kWord: string): string; var i, lStr: integer; begin Result := WizardDirValue; lStr := Length(kWord); for i := 0 to ParamCount do begin if Pos(LowerCase(kWord), LowerCase(ParamStr(i))) > 0 then begin Result := Copy(ParamStr(i), Pos(LowerCase(kWord), LowerCase(ParamStr(i))) + lStr, Length(ParamStr(i)) - lStr); while (Result[1] = '"') and (Result[Length(Result)] = '"') do begin Delete(Result, Length(Result), 1); Delete(Result, 1, 1); end; end; if Result <> WizardDirValue then Break; end; end; procedure InitializeWizard(); begin WizardForm.DirEdit.Text := GetDirFromCMD('/D='); // можно поменять на любую букву end; |
Отправлено: 09:49, 26-06-2015 | #741 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 79
|
Профиль | Отправить PM | Цитировать как показать TasksList через CurPageChanged; (Как в скрипте от Serega.)
|
Отправлено: 17:19, 27-06-2015 | #742 |
Старожил Сообщения: 169
|
Профиль | Отправить PM | Цитировать Цитата PlanktoN:
Как перед запуском инсталлятора проверить подключен ли компьютер к интернет? Если интернет подключен, то выдать сообщение "Имеется активное подключение к интернет! Отключите интернет и попробуйте снова!" (mb_ok), если нет то продолжить установку. |
|
Отправлено: 19:17, 28-06-2015 | #743 |
Старожил Сообщения: 212
|
Профиль | Отправить PM | Цитировать Цитата AlekseyPopovv:
Function InternetGetConnectedState(var lpdwFlags: DWORD; dwReserved: DWORD): Boolean; external 'InternetGetConnectedState@wininet.dll stdcall'; Function InitializeSetup(): Boolean; begin if not InternetGetConnectedState(ConnectionState, 0) then Result := True else begin MsgBox('Имеется активное подключение к интернет! Отключите интернет и попробуйте снова!', mbError, MB_OK); Result := False; end; end; |
|
------- Последний раз редактировалось kotyarko@fb, 28-06-2015 в 19:54. Отправлено: 19:48, 28-06-2015 | #744 |
Старожил Сообщения: 169
|
Профиль | Отправить PM | Цитировать kotyarko@fb, В первом варианте вообще не собирается скрипт, во втором варианте всё собирается, но всегда пишет что интернета нет и продолжает установку!
|
Отправлено: 20:31, 28-06-2015 | #745 |
![]() Ветеран Сообщения: 863
|
Профиль | Отправить PM | Цитировать Цитата AlekseyPopovv:
[setup] appname=app appversion=1.0 defaultdirname={sd}\app [Code] var ConnectionState: DWORD; Function InternetGetConnectedState(var lpdwFlags: DWORD; dwReserved: DWORD): Boolean; external 'InternetGetConnectedState@wininet.dll stdcall'; Function InitializeSetup(): Boolean; begin if not InternetGetConnectedState(ConnectionState, 0) then Result := True else begin MsgBox('Имеется активное подключение к интернет! Отключите интернет и попробуйте снова!', mbError, MB_OK); Result := False; end; end; |
|
------- Отправлено: 00:07, 29-06-2015 | #746 |
Старожил Сообщения: 169
|
Профиль | Отправить PM | Цитировать |
Отправлено: 04:40, 29-06-2015 | #747 |
![]() Ветеран Сообщения: 863
|
Профиль | Отправить PM | Цитировать Цитата AlekseyPopovv:
Скрытый текст
[setup] appname=app appversion=1.0 defaultdirname={sd}\app [Code] var ConnectionState: DWORD; Int: boolean; Function InternetGetConnectedState(var lpdwFlags: DWORD; dwReserved: DWORD): Boolean; external 'InternetGetConnectedState@wininet.dll stdcall'; Function InitializeSetup(): Boolean; begin if not InternetGetConnectedState(ConnectionState, 0) then Result := True else begin MsgBox('Имеется активное подключение к интернет! Отключите интернет и попробуйте снова!', mbError, MB_OK); Result := False; end; end; procedure InitializeWizard(); begin Int := True; end; procedure DeinitializeSetup(); begin if Int <> False then begin ISWin7DeInit; end; end; |
|
------- Отправлено: 07:12, 29-06-2015 | #748 |
Ветеран Сообщения: 862
|
Профиль | Отправить PM | Цитировать доброе время суток. подскажите пожалуйста код для ansi на проверку на наличие файла перед распаковкой файлов
у меня есть один код, но при компиляции выдает ошибку [code] var found: boolean; procedure NextButtonClick (CurPageID: integer): boolean; begin if CurPageID=wpSelectDir then begin if not FileExists(AddBackslash(WizardForm.DirEdit.text) + 'CaptureDotNetRes.dll') then begin found:=false; result:=false; MsgBox('Отсутствуют некоторые файлы. Установка будет прервана!', MBinformation, mb_OK) WizardForm.Close; end else begin found:=true; result:=true; end; end end; procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean); begin if ((CurPageID= wpSelectDir )and (not found)) then begin cancel:=true; confirm:=false; end; end; |
------- Последний раз редактировалось habib2302, 29-06-2015 в 11:24. Отправлено: 10:28, 29-06-2015 | #749 |
Пользователь Сообщения: 76
|
Профиль | Отправить PM | Цитировать habib2302, Так пойдет. На любой версии.
Скрытый текст
var error : Boolean; function NextButtonClick(CurPageID: Integer): Boolean; begin Result := true; error := false; if CurPageID=wpSelectDir then begin Result := FileExists(ExpandConstant('{src}\file.test')) if not Result then begin MsgBox('Отсутствуют некоторые файлы. Установка будет прервана!', mbError, MB_OK); error := true; WizardForm.CancelButton.OnClick(WizardForm.CancelButton); end; end; end; procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean); begin Confirm:=False; end; |
Отправлено: 14:09, 29-06-2015 | #750 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 7] | El Sanchez | Автоматическая установка приложений | 2499 | 02-02-2015 08:59 | |
Скрипты Inno Setup. Помощь и советы [часть 6] | El Sanchez | Автоматическая установка приложений | 2494 | 10-03-2014 11:51 | |
Скрипты 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 |
|