Inno Setup (создание инсталяционных пакетов)

Статус
В этой теме нельзя размещать новые ответы.

nik1967

Old Men
Проверенный
Shift85, в большинстве случаев [SOURCE="inno"]function WrapCallback(callback:TCallback; paramcount:integer):longword;
external 'wrapcallback@files:ISDone.dll stdcall delayload';[/SOURCE] можно заменить на
[SOURCE="inno"]function CallbackAddr(ProcNameOrFuncName: String): Integer;[/SOURCE]
 

sergey3695

Ветеран
Модератор
Shift85, про первый вопрос уже было, поищи.
Про второй: можешь и тем и тем пользоваться, можешь чем-то одним. :)
 

Shift85

Старожил
При использовании скина как сделать,чтобы при выходе инсталл плавно закрывался без дополнительной формы аеро ( на Win7)...

И как сделать DirEdit прозрачным,чтобы его можно было выделять... Transparent:=True не пашет...

Код:
with WizardForm.DirEdit do begin
Left := ScaleX(90);
Top := ScaleY(100);
Width := ScaleX(380);
//BorderStyle:= bsNone;
//Height := ScaleY(25);
Font.Name:= 'Verdana';
Font.Size:= 9;
Color := clBlack;
Font.Color:= clWhite;
Font.Style := [];
Parent:=WizardForm;
end;
Заранее спасибо...
 
Последнее редактирование:

urban

Старожил
При использовании скина как сделать,чтобы при выходе инсталл плавно закрывался без дополнительной формы аеро ( на Win7)...
[Setup]
AppName=My Program
AppVerName=My Program
DefaultDirName={pf}\My Program
OutputDir=userdocs:InnoSetupTest.

Код:
const 
   AW_BLEND = $00080000;  
   AW_HIDE = $00010000;  
 
function AnimateWindow(hWnd: HWND; dwTime: DWORD; dwFlags: DWORD): Boolean; 
 external 'AnimateWindow@user32 stdcall'; 
 
procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean); 
begin 
  if MsgBox(SetupMessage(msgExitSetupMessage), mbConfirmation, MB_OKCANCEL) = IDOK then 
  begin 
    Confirm := False; 
    AnimateWindow(WizardForm.Handle, 2500, AW_BLEND or AW_HIDE); 
    Cancel := True; 
  end else 
  Cancel := False; 
end;[/spoiler]
оно?
 

Shift85

Старожил
Собственно это для аннимации со скином не дружит...:(

Нашел другое решение убрать эту форму аеро ( на Win7) при выходе из инсталла...;)

Если кому интересно то вот:

#ifdef UNICODE
#define S "U"
#else
#define S "A"
#endif

[Setup]
AppName=My Program
AppVerName=My Program
DefaultDirName={pf}\My Program
OutputDir=.

[Files]
Source: "Files\ISSkin{#S}.dll"; Flags: "DontCopy";
Source: "Files\Tiger.cjstyles"; Flags: "DontCopy";

Код:
function ShowWindow(hWnd: HWND; nCmdShow: Integer): BOOL;
  external 'ShowWindow@user32.dll stdcall';

//Skin
procedure LoadSkin(lpszPath: String; lpszIniFileName: String);
  external'LoadSkin@{tmp}\isskin{#S}.dll stdcall delayload';

procedure UnloadSkin;
  external 'UnloadSkin@{tmp}\isskin{#S}.dll stdcall delayload';

function InitializeSetup(): Boolean;
begin
  ExtractTemporaryFile('ISSkin{#S}.dll');
  ExtractTemporaryFile('Tiger.cjstyles');
  LoadSkin(ExpandConstant('{tmp}\Tiger.cjstyles'), '');
  Result:= True;
end;

procedure DeinitializeSetup();
begin
  ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0);
  Sleep(150);
  UnloadSkin();
end;[/QUOTE]

P.S Актуально кто использует скинирование инсталла...
 
Последнее редактирование:

Shift85

Старожил
Можно ли сделать слайд шоу в окне инсталла без isSlideShow.dll через какую нибудь другую библиотеку...

P.S isSlideShow.dll с некоторыми скинами не дружит например: Tiger...
 

urban

Старожил
Shift85, можно,но будет не именно в самом окне инсталла,а поверх типо,но оно будет не красиво
 

Zee387

Мимокрокодил
Можно ли сделать слайд шоу в окне инсталла без isSlideShow.dll через какую нибудь другую библиотеку...

P.S isSlideShow.dll с некоторыми скинами не дружит например: Tiger...
There, I created this example for people who want slides without the use of isslideshow but it is not animated.
 

Вложения

Zee387

Мимокрокодил
In this script, line 159

InitSlideshow(ExpandConstant('{src}\Database'),'.jpg',5000,0,0,1060,560);

it is in milliseconds so if you need let's say 15 seconds you need to multiply the required time in seconds by 1000 then it will be 15000
 

Zee387

Мимокрокодил
you don't, you just place the images you want but they must be numbered in a sequence from 1 to infinity then everything will be take care of.
the only thing you can change is the directory of the images.
 

PlaymatE

Мимокрокодил
подскажите как сделать чтобы иконку было видно в "Удаление программ" ?
 

nik1967

Old Men
Проверенный
PlaymatE, из русской справки
От себя добавлю, что лучше пользоваться файлом .ico желательно 256х256
 

Shift85

Старожил
У кого нибудь имеется пример работы модуля прогресс бара от South.Tver делениями совместно с ISDone...
Поделитесь пожалуйста...
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху