Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 4]
У кого есть isSlideShow v1.03 поделитесь пожалуйста нигде не могу найти »
открою тебе секрет: ты ее не найдешь и делиться с тобой вряд ли станут
valyok666
11-04-2012, 22:04
Ivan_009, иди читай справку!мне надоедают люди которые много чего хотят а делать своими руками не хотят!! :diablo:
:diablo: :diablo:
El Sanchez
11-04-2012, 22:08
ты же используешь исдан. А это библиотека со скриптом, через который ты к ней обращаешься. Уберём лишнее. Получаем в конечном итоге библиотеку и конфликт который тебе хочется решить
Вывод: Директива AppMutex несовместима с библиотекой или со скриптом-настройкой к библиотеке. Если второе, то совет я тебе дал. Не помогло? Значит обратись к автору библиотеки. »
Johny777, не мучай человека, он абсолютно НЕ про IsDone говорит. :). Ему нужно при неудачной установке вызвать деинсталлятор, но с директивой AppMutex ничего не выйдет (скрин он представил), т.к. мьютекс еще не освобожден вызываемым приложением (сетапом).
sergey3695, нужно освободить мьютекс перед вызовом деинсталлятора, но для этого нужно знать его описатель, который Inno-шный CreateMutex не возвращает. Ничего страшного, экспортируем сами нужную функцию и заменим ею Inno-шную. У себя в скрипте напишите:
[Setup]
AppMutex=MyProgramMutexUniqueName
[Code]
var
hMutex: THandle;
function WINAPI_CreateMutex(lpMutexAttributes: Longint; bInitialOwner: BOOL; lpName: String): THandle; external 'CreateMutexA@kernel32.dll stdcall';
function ReleaseMutex(hMutex: THandle): BOOL; external 'ReleaseMutex@kernel32.dll stdcall';
function CloseHandle(hObject: THandle): BOOL; external 'CloseHandle@kernel32.dll stdcall';
procedure InitializeWizard();
begin
hMutex := WINAPI_CreateMutex(0, False, '{#SetupSetting("AppMutex")}');
end;
...
if (CurStep=ssPostInstall) and ISDoneError then begin
ReleaseMutex(hMutex);
CloseHandle(hMutex);
Exec2(ExpandConstant('{uninstallexe}'), '/VERYSILENT', false);
end;
У кого есть isSlideShow v1.03 »Скачайте какой нибудь репак с торента где есть слайдшоу. запустите но ничиго не делайте. идите в папку C:\Documents and Settings\<User>\Local Settings\Temp и там ищите isSlideShow. Кстати дллка может находица в подпапках. Я таким образом много новинок скинул.
А так мвам никто не даст.
valyok666
11-04-2012, 22:22
gezha78, легче Пуск->Выполнить->%temp%
Devils Night
11-04-2012, 22:25
gezha78, valyok666, Эх, спалили всю контору, нельзя вас обоих брать в партизаны :diablo:.
valyok666
11-04-2012, 22:28
Devils Night, Готовлюсь к :butcher: :shot:
Johny777
11-04-2012, 23:25
sergey3695,
Серый
извини за мой тупизм.
Всё, что я тебе писал - ересь (кроме русской справки)
El Sanchez,
Спасибо! Развёл. Из-за моего неправильного рассуждения человек чуть не лишился желаемого.
Nestle_Nesquik
12-04-2012, 09:48
Мне очень нужен уже готовый скрипт с музыкой и картинкой на весь экран, пожалуйста, добавьте эти скрипты в мой скрипт и выделите их красным цветом. Огромное спасибо!
P.S. Флуда мне не надо, мне нужен скрипт!
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{9EF45819-0D12-4C3B-B2FA-FDA670E27623}
AppName=Fusion
AppVersion=3.51
;AppVerName=Fusion 3.51
DefaultDirName={pf}\Fusion
DefaultGroupName=Fusion 3.51
OutputBaseFilename=Установка приложения
Compression=lzma
SolidCompression=yes
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files]
Source: "C:\Users\(имя пользователя)\Desktop\Smart_Install_Maker\Fusion 3.51.exe"; DestDir: "{app}"; Flags: ignoreversion
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
[Icons]
Name: "{group}\Fusion"; Filename: "{app}\Fusion 3.51.exe"
Name: "{commondesktop}\Fusion"; Filename: "{app}\Fusion 3.51.exe"; Tasks: desktopicon
[Run]
Filename: "{app}\Fusion 3.51.exe"; Description: "{cm:LaunchProgram,Fusion}"; Flags: nowait postinstall skipifsilent
R.i.m.s.k.y.
12-04-2012, 09:55
Nestle_Nesquik, здесь никто никому ничего не должен
Если тебе что-то нужно - делаешь сам
Для начинающих - все в шапке, все примеры картинок, музыки, надо всего лишь скачать + 3-4 чашки кофе
За тебя никто ничего делать не будет
Temyraz@fb
12-04-2012, 10:36
друзья, у меня вот какая проблема. я понимаю возможно я не туда пишу это, но все же google мне не помог в поиске ответа, поэтому спрашиваю вас. через inno setup запуская батник с параметрами. в параметре передаются пароль и путь. если путь полностью на английском, то проблем нет, а если встречаются русские буквы то батник выдает ошибку. вот сам батник
Код:
CLS
ECHO OFF
For /F "tokens=*" %%k In (text.txt) Do For /F "tokens=*" %%j In ('Echo %%k') Do set PGBIN=%%j
SET PGPASSWORD=%1
SET DUMPPATH=%2
%~d0
CD %~dp0
SET DATETIME=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2% %TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%
cd %PGBIN% .\pg_dump -i -h localhost -p 5432 -U postgres -c -Fc -f "%DUMPPATH%\sc.backup" "sc"
IF NOT %ERRORLEVEL%==0 GOTO Error
GOTO Successfull
:Error
DEL %DUMPPATH%
CHCP 1251
MSG * "Ошибка при создании базы данных"
GOTO End
:End
вот эта значение SET DUMPPATH=%2 может иметь русский текст.
что посоветуете?
может как то можно в inno setupe это настроит? или в батнике в самом?
вот команда в inno
[Run]
Filename: {src}\backupDB.bat; Parameters: "{code:GetPsqlPath} {code:SrcDir}"; Flags: shellexec runhidden waituntilterminated; Check: make_copy
Johny777
12-04-2012, 11:06
Temyraz@fb,
боюсь бред говорю, но мне кажется тепе стоит попробовать скомпилировать скрипт на UNICODE версии. Попробуй!
Temyraz@fb
12-04-2012, 11:14
а подробней можно?
Temyraz@fb, http://www.jrsoftware.org/download.php/ispack-unicode.exe
R.i.m.s.k.y.
12-04-2012, 11:34
Temyraz@fb, попробуй, но YURSHAT это не поможет, кодировка батника с русскими буквами должна быть СР866, ну и путь обязательно в кавыках.
А вот как в инно записать в батник в кодировке СР866 - я Х3
Temyraz@fb
12-04-2012, 11:35
все равно не догнал вашей мысли(((
R.i.m.s.k.y.
12-04-2012, 11:41
Temyraz@fb, гугель платный стал?
кодировка (http://ru.wikipedia.org/wiki/%CD%E0%E1%EE%F0_%F1%E8%EC%E2%EE%EB%EE%E2) СР866 (http://ru.wikipedia.org/wiki/%D0%90%D0%BB%D1%8C%D1%82%D0%B5%D1%80%D0%BD%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D0%B0%D1%8F_%D0%BA%D0%BE%D0 %B4%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0) СР1251 (http://ru.wikipedia.org/wiki/Windows-1251)
El Sanchez
12-04-2012, 18:16
вот сам батник »
Temyraz@fb, не отработает, даже если в нужной кодировке сохранить, т.к. все неправильно написано. Да и сам батник не нужен, нужна лишь одна строчка с pg_dump в секции [Run].
pg_dump -i -h localhost -p 5432 -U postgres -c -Fc -f "%DUMPPATH%\sc.backup" "sc" »
Красным выделенное - это что за параметр?
Temyraz@fb
13-04-2012, 08:28
название базы
да я уже разобрался, я добавить в батник chcp 1251 и значение переменой DUMPPATH через inno setup изменил у bat файла. и система заработала
Temyraz@fb
13-04-2012, 11:32
слушайте, а вообще возможно ли такое: при запуске bat
IF NOT %ERRORLEVEL%==0 GOTO Error
GOTO Successfull
:Error
DEL %DUMPPATH%
CHCP 1251
MSG * "Ошибка при создании базы данных"
GOTO End
:End
после вывода сообщения возвращалась в inno setup на определенную страницу?
просто получается что если пользователь указал место, куда батник должен сохранить базу, где не хватает памяти или нет права на запись...
p.s. размер базы можно вычислить только по psql запросом, а как через него записать в файле этот размер я не знаю, google тоже молчит в этом плане
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC