Показать полную графическую версию : [архив] Скрипты Inno Setup. Помощь и советы [часть 2]
Chelluga
25-01-2010, 21:27
Народ, ещё вопрос:
какие могут быть последствия объединения скриптов через Inno Script Joiner??
Если один скрипт мой, а два других только с отдельной функцией.
Chelluga
последствия только положительные, если плохие, то скрипт не примется
У кого есть кода для перевода HEX строки в десятичный тип? »
Написал функцию для преобразования строки из Hex в string.
[Setup]
AppName=HexToStr
AppVerName=HexToStr v 1.0
AppPublisher=Serega
AppPublisherURL=http://forum.oszone.net/member.php?userid=88670
DefaultDirName={pf}\HexToStr
OutputDir=.
Compression=lzma/ultra
InternalCompressLevel=ultra
SolidCompression=yes
[Languages]
Name: rus; MessagesFile: compiler:Languages\Russian.isl
[Code]
function HexToStr(str_hex: string): string;
var
i: Integer;
begin
StringChange(str_hex, ',', '');
for i:= 1 to Length(str_hex) div 2 do
Result:= Result + Chr(StrToInt('$' + Copy(str_hex, (i-1)*2+1, 2)));
end;
function InitializeSetup(): Boolean;
var
msg: string;
begin
msg:= 'CF,F0,E8,EC,E5,F0,20,F0,E0,E1,EE,F2,FB,20,F4,F3,ED,EA,F6,E8,E8,20,48,65,78,54,6F,53,74,72';
MsgBox(HexToStr(msg), mbInformation, MB_OK);
end;
Chelluga
25-01-2010, 22:03
Так кто может написать (или выложить скрипт) функцию подсчёта времени (до завершения)??
svensoft
25-01-2010, 22:05
YURSHAT, Подскажи пожайлуста, какой размер у .bmp должен быть чтобы вставить в инсталятор и растянуть на всю станицу ?..
Так кто может написать (или выложить скрипт) функцию подсчёта времени (до завершения)?? »
Вам такое никто не сделает. Как вы себе всё это представляете?
Chelluga
25-01-2010, 22:18
Вам такое никто не сделает. Как вы себе всё это представляете?
Ну я то не знаю, насколько это сложно в написании поэтому и спросил - тут же народ больше осведомлён в инсталляторах, мож поможет. Но если нет, так нет.
перед деинсталяцией приложения был убит процесс »
Просто надо записать:
[UninstallRun]
Filename: taskkill; Parameters: /f /t /im punto.exe; Flags: runhidden
насколько это сложно в написании поэтому и спросил »
Я не говорю, что это не возможно, но действительно, писанины очень много...
Chelluga
25-01-2010, 22:36
Я не говорю, что это не возможно, но действительно, писанины очень много... »
А может Вы знаете откуда можно эту функцию вырезать?
Я пытался найти её в Corona Skin, но там уж слишком много текста...может подскажете где можно поискать пример или что-то на подобии?
я скачал, но не получается все равно »
Сейчас внимательно прочитал ваши сообщения об ошибке.
Вы копируете файлы ISSkin3.dll и ISSkin3.cjstyles в {sys}, т.е. это системный каталог system32, мало того вы ещё и ставите флаги ignoreversion. Такие вещи нужно распаковывать в {tmp} или в {app}, но никак не в {sys}.
На сайте есть инструкция (http://isskin.codejock.com/gettingstarted.asp) по использованию.
YURSHAT, Подскажи пожайлуста, какой размер у .bmp должен быть чтобы вставить в инсталятор и растянуть на всю станицу ?.. »
497 * 360
Ну я то не знаю, насколько это сложно в написании поэтому и спросил - тут же народ больше осведомлён в инсталляторах, мож поможет. Но если нет, так нет. »
У меня есть такая фича, будет в новой версии моего скрипта (NFS Undercover). Как только доделаю свой скрипт (пару деньков) сразу выложу фичу со временем. Так что немного подождите
Я не говорю, что это не возможно, но действительно, писанины очень много... »
Ну, не сильно то и много
так такой скрипт в фриарковский встроен вроде?О_о
может подскажете где можно поискать пример »
Скрипт InnoSetup для распаковки архивов FreeArc (http://www.forum.oszone.ru/post-1300871-729.html)
Chelluga
25-01-2010, 22:47
через пару деньков выложу такой скрипт »
Большое Вам человеческое спасибо :)
Serega И Вам спасибо.
Serega
не поможешь мне с моей траблой? 2 часа убил, Инно не принимает стиль из визардформ десинджер, просто игнорирует его... он на 100 странице, заранее спасибо!
Эх, Serega, я подумал об этом и читал инструкцию. Вписал скрипт точь в точь как на сайте, вложив Office2007.cjstyles и ISSkin.dll в так сказать {app}. Ну не проходит скин с этой версией. Я не спец конечно по Inno, но вроде бы все что я делаю мне понятно, но не получается хоть тресни, не думаю что со скинами не тестилась версия 5.3.7 unocode. Целый день сижу и так и сяк кручу, не получается, досадно, ужас.
Может еще надо вписывать в какую то секцию, я вписал как на сайте, только в две секции [Files] и .
В секции [Code] сейчас у меня вот так:
[code] [Code]
// Importing LoadSkin API from ISSkin.DLL
procedure LoadSkin(lpszPath: String; lpszIniFileName: String);
external 'LoadSkin@files:isskin.dll stdcall';
// Importing UnloadSkin API from ISSkin.DLL
procedure UnloadSkin();
external 'UnloadSkin@files:isskin.dll stdcall';
// Importing ShowWindow Windows API from User32.DLL
function ShowWindow(hWnd: Integer; uType: Integer): Integer;
external 'ShowWindow@user32.dll stdcall';
function InitializeSetup(): Boolean;
begin
ExtractTemporaryFile('Office2007.cjstyles');
LoadSkin(ExpandConstant('{tmp}\Office2007.cjstyles'), 'NormalBlack.ini');
Result := True;
end;
procedure DeinitializeSetup();
begin
// Hide Window before unloading skin so user does not get
// a glimpse of an unskinned window before it is closed.
ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0);
UnloadSkin();
end;
2 часа убил, Инно не принимает стиль из визардформ десинджер, просто игнорирует его »
Так название этой процедуры (RedesignWizardForm;) нужно просто добавить в InitializeWizard, пример:
procedure InitializeWizard();
begin
RedesignWizardForm;
end;
Serega
Блииин ошибку выдает на RedesignWizardForm ругаеться, наверно не туда вставляю ее, это в самый верх надо???
Блииин ошибку выдает на RedesignWizardForm ругаеться, наверно не туда вставляю ее, это в самый верх надо??? »
[Setup]
AppName=My Program
AppVerName=My Program 1.5
DefaultDirName={pf}\My Program
[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
[ISFormDesigner]
WizardForm=FF0A005457495A415244464F524D0030104401000054504630F10B5457697A617264466F726D0A57697A61726 4466F726D0C436C69656E744865696768740366010B436C69656E74576964746803EF010C4578706C696369744C656674020 00B4578706C69636974546F7002000D4578706C69636974576964746803F7010E4578706C696369744865696768740388010 D506978656C73506572496E636802600A54657874486569676874020D00F10A544E6577427574746F6E0A4E6578744275747 46F6E044C656674021F0557696474680373010C4578706C696369744C656674021F0D4578706C69636974576964746803730 10000F10C544E65774E6F7465626F6F6B0D4F757465724E6F7465626F6F6B00F110544E65774E6F7465626F6F6B506167650 B57656C636F6D65506167650D4578706C69636974576964746803F1010E4578706C696369744865696768740339010000000 0
[Code_]
procedure RedesignWizardForm;
begin
with WizardForm.NextButton do
begin
Left := ScaleX(31);
Width := ScaleX(371);
end;
end;
procedure InitializeWizard();
begin
RedesignWizardForm;
end;
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.