• Добро пожаловать на WYLEK.ru. Пожалуйста, войдите или зарегистрируйтесь.
 
96 гостей, 1 пользователь

  • InnoSetup Ultra 5 0 5 1
avatar_WYLEK

InnoSetup Ultra

Автор WYLEK, 01 мая 2011, 19:39:00

« предыдущая - следующая »

Gnom

Ответ #30 : 11 июля 2011, 17:25:00 #30
Цитата: WYLEK// Result : // 0 = іЙ№¦ // 1 = К§°Ь end;
нужно поправить пояснения

EDUARD-T

Ответ #31 : 25 июля 2011, 18:49:00 #31
Цитата: saweЭто не архив с софтом, это инсталл пакет Инока потроха не удалось просмотреть. На слово не верю значит в топку как мусор!

Вообще пощла тенденция на простоту установки софта.Автор постарался сделать установку пакета "одним кликом".За это ему и спасибо.

Добавлено (25.07.2011, 18:49:43)
---------------------------------------------
Я самоучка по сути.По-этому прошу помощи в том что-бы Вы розяснили мне что в скрипте за что отвечает.
Я собирал инстайллеры с помощю мастера,но хотелось-бы что-бы установщик был с эффектами.Кто может помочь?Если нужно я скрипт выложу.

Gnom

Ответ #32 : 25 июля 2011, 20:40:00 #32
EDUARD-T, И не только ты
 Нужно сразу определиться:
 1. При вопросе по скрипту и поиску в нем ошибки - скрипт нужен всегда.
 2. Вопрос должен быть конкретным - я не знаю, что именно нужно реализовать.
 Вывод - если в скрипте нет ошибок, и все работает - то он не нужен. Если чего-то хочется сверх того, что можно достигнуть дефолтными секциями - нужно определиться, что именно хочется, и в каком напралении - в плане функционала, или оформления, или и того и другого.

EDUARD-T

Ответ #33 : 25 июля 2011, 22:05:00 #33
В пинципе скрипт рабочий.
 Хочу что-бы
 1- при установке на экране было не стандартное оформление,а моё.
 2- Показывало минимальные системные требования.
 3- если можно то сделать так что-бы играла музыка.

 --------------------------

Gnom

Ответ #34 : 26 июля 2011, 11:18:00 #34
EDUARD-T, Я так понял, ты разобрался, для чего форм-дизайнер там нужен Дальнейший шаг - если используеш моюсборку, то в меню пуск - Inno Setup 5Справкаготовые модули. Ковыряйся, разбирайся, и вот, когда непонятно будет, тогда и начнется помощ. Я пока не знаю, что именно ты хочеш, в плане
Цитата: EDUARD-T2- Показывало минимальные системные требования. 3- если можно то сделать так что-бы играла музыка.
есть в готовых модулях. Да и по первому вопросу - тоже

EDUARD-T

Ответ #35 : 31 июля 2011, 15:11:00 #35
У меня в конце сборки выдает вот эту ошибку :

 Внутренняя ошибка:ExtracktTemporaryFile: The file "get_hw_caps.dll" was not found.

 Что делать?

Gnom

Ответ #36 : 31 июля 2011, 18:28:00 #36
Добавить в инсталл эту библиотеку.

[Files]Source: get_hw_caps.dll; Flags: dontcopy;
И, соответственно, положить ее рядом со скриптом. Если пользуешся моей сборкой, то можно так:

[Files]Source: compiler:DLL Packget_hw_caps.dll; Flags: dontcopy;
тогда скрипт сам ее найдет.

EDUARD-T

Ответ #37 : 01 августа 2011, 11:22:00 #37
Хм?!ПОЛУЧИЛОСЬ!

 Правда с звуками не получилось,но сам результат уже радует.Правда пришлось попотеть и извилину напрягать.Добавлено (01.08.2011, 11:22:35)
---------------------------------------------
В скрипте есть такой код:

 Source: ..music.xm; DestDir: {app}

 На этой строке у меня загвоздка.Выдает сообщение что отсутствует music.xm.Как создать этот файл?

Gnom

Ответ #38 : 01 августа 2011, 13:06:00 #38
Насколько я знаю - это файл списка, для трекерной музыки, тут я хз, как поступить, с треками не заморачивался, обычно достаточно одной мелодии, а где не достаточно - просто в аудиоредакторе соединял несколько мелодий

EDUARD-T

Ответ #39 : 01 августа 2011, 22:08:00 #39
Угу.Попробую по эксперементировать.Думаю что чегото навояю.

WYLEKАвтор темы

Ответ #40 : 22 февраля 2012, 20:08:00 #40
Цитата: GnomРаботает вот так...

Посмотри код в сообщение 33 или 35. дело в том, что если MD5 не сходится, все равно процедура пропатчивания происходит.
А надо бы выход сделать из установки.

Gnom

Ответ #41 : 22 февраля 2012, 21:20:00 #41
Вот так должно нормально отработать.

Показать / Скрыть текст
Показать / Скрыть текст

[Setup]
DisableFinishedPage=True
AppName=Themes Creator
AppVerName=3.0
UsePreviousAppDir=true
DefaultDirName={pf}Sony EricssonThemes Creator
Uninstallable=false
Compression=lzma
SolidCompression=true
OutputBaseFilename=Themes Creator
LicenseFile=embeddedLicense.rtf
WizardImageFile=embeddedWizModernImage-Is.bmp
WizardSmallImageFile=Войдите на сайт для перехода по ссылке p
SetupIconFile=embeddedWXICON.ico


[Files]
Source: callvpatch.dll; Flags: dontcopy
Source: VPatch.dll; Flags: dontcopy
Source: MyPatch.dat; Flags: dontcopy


[Code]
const
     BackupDir = "PatchBackup";
     PatchFile = "MyPatch.dat";

// Задействуем системную функцию для перемещения файлов при ресторинге - здорово ускорит работу при большом количестве файлов.
function MoveFile(const srcFile, destFile: PAnsiChar): Integer;external "MoveFileA@kernel32.dll stdcall";
function vpatch(parentwnd: Integer; pluginname,funcname,param1,param2,param3: PAnsiChar): Integer;external "vpatch@files:callvpatch.dll stdcall";

function PatchFileFunc(FileName,BackupFileName: String): Integer;
begin
     Result := vpatch(1,ExpandConstant("{tmp}VPatch.dll"),"vpatchfile",ExpandCo
nstant("{tmp}"+
PatchFile),
     ExpandConstant("{app}"+BackupDir+""+BackupFileName),ExpandCons
tant("{app}
"+FileName));
// Result :
// 0 = іЙ№¦
// 1 = К§°Ь
end;

procedure BackupFile(FileName,BackupFileName: String);
begin
     if not FileExists(ExpandConstant("{app}"+BackupDir+""+BackupFileName)
) then
     FileCopy(ExpandConstant("{app}"+Filename),ExpandConstant("{app}
"+BackupDir
+""+BackupFileName),True);
end;

procedure RestoreFile(BackupFileName,FileName: String);
begin
     MoveFile(ExpandConstant("{app}"+BackupDir+""+BackupFileName),E
xpandConstan
t("{app}"+Filename));
end;

function InitializeSetup(): Boolean;
begin
     if not FileExists(ExpandConstant("{tmp}VPatch.dll")) then ExtractTemporaryFile("VPatch.dll");
     if not FileExists(ExpandConstant("{tmp}MyPatch.dat")) then ExtractTemporaryFile("MyPatch.dat");
     Result:=true;
end;

// Проверка присутствия определенных файлов в папке с установленной программой на странице выбора папки назначения
function NextButtonclick(CurPage: Integer): Boolean;
var
     s:string;
begin
     Result:=True;
     case CurPage of 6:
       begin
         If (FileSearch("ThemesCreator.exe", ExpandConstant("{app}"))="") then //Вставьте полное имя файла выше для проверки на присутствие
         begin
           s:="Извините, в директории "+ExpandConstant("{app}")+"" #13 "не обнаружены оригинальные файлы." #13#13 "Пожалуйста, выберите правильный путь к папке для установки обновления.";
           MsgBox(s, mbError, mb_Ok);
           Result:= False;
         end;
       end;
     end;
end;

procedure CancelButtonclick(CurPage: Integer; var Cancel, Confirm: Boolean);
begin
     Cancel:=True;
     case
       CurPage of
       12: Confirm:=False;
     end;
end;

procedure CurStepChanged(CurStep: TSetupStep);
var
     MD5,s:string;
begin
     case CurStep of
       ssInstall:
       begin
         MD5 := GetMD5OfFile(ExpandConstant("{app}ThemesCreator.exe"));
         If not (MD5 = "9711713d2e4173c3cf450a1ffd76f129") then //Вставьте полное имя файла выше и MD5 с енг буквами В НИЖНЕМ РЕГИСТРЕ!
         begin
           s:="Ошибка MD5 в файле обновления!" #13#13 "Установка прекращена.";
           MsgBox(s, mbCriticalError, mb_Ok); //Если хеш файла(ов) не соответствует, выдается сообщение, и на этом все действия прекращаются.
           WizardForm.Close; //Закрытие инсталлятора
           Exit; //Прерывание и откат всех действий
         end else
         begin
// ----- в этом блоке собственно пропачивание ----- \
           CreateDir(ExpandConstant("{app}"+BackupDir));

           BackupFile("ThemesCreator.exe","ThemesCreator.bak");
           if PatchFileFunc("ThemesCreator.exe","ThemesCreator.bak") = 1 then
           RestoreFile("ThemesCreator.bak","ThemesCreator.exe");
           WizardForm.PROGRESSGAUGE.POSITION := 33;

           BackupFile("ReleaseNotes.txt","ReleaseNotes.bak");
           if PatchFileFunc("ReleaseNotes.txt","ReleaseNotes.bak") = 1 then
           RestoreFile("ReleaseNotes.bak","ReleaseNotes.txt");
           WizardForm.PROGRESSGAUGE.POSITION := 66;
// -------------------------------------------------- \
         end;
       end;
     end;
end;
[свернуть]
[свернуть]

WYLEKАвтор темы

Ответ #42 : 22 февраля 2012, 23:53:00 #42
Цитата: GnomВот так должно нормально отработать.

 Это работает как надо! Спасибо! Там правда одна очепятка но я нашел и исправил.

Gnom

Ответ #43 : 23 февраля 2012, 10:27:00 #43
Цитата: WYLEKно я нашел и исправил.
В моем посте поправишь? а то кто-то менее опытный возьмет, и замучается искаить проблему

WYLEKАвтор темы

Ответ #44 : 23 февраля 2012, 11:09:00 #44
Цитата: GnomВ моем посте поправишь? а то кто-то менее опытный возьмет, и замучается искаить проблему

 Ничего, найдут подсказка вот - BackupFi leName
 Кстати я вставил код Лингвистическая защита в установщик и там такая же ситуация во всем нете с ошибкой идет скрипт - MsgBox("Ответ неверен!", mb Information, MB_OK)

* Ваши права на сайте

    TinyPortal

  • Вы не можете создавать статьи.
  • Вы не можете изменять свои статьи.
  • Вы не можете писать комментарии.
  • Вы не можете управлять статьями.
  • Вы не можете загружать файлы в TPdownloads.
  • Вы не можете управлять TPlistimages.

    Simple Machines

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