Thread: Inno Ultra Lite
View Single Post
  #7  
Old 02-12-2013, 08:05
sentinelks sentinelks is offline
Banned
 
Join Date: May 2013
Location: hjklò
Posts: 281
Thanks: 74
Thanked 320 Times in 157 Posts
sentinelks is on a distinguished road
Button Botva2 + link

#define Webs "www.google.it"
[Setup]
AppName=Test
AppVersion=Test
DefaultDirName=Test
OutputDir=.

[Files]
Source: botva2.dll; Flags: dontcopy
Source: CallbackCtrl.dll; Flags: dontcopy
Source: logo.png; Flags: dontcopy

[Code]
const
BtnClickEventID = 1;

type
TBtnEventProc = procedure (SK:HWND);

var
Btn:TButton;
SK,hLogoBtn:HWND;

function WrapBtnCallback(Callback: TBtnEventProc; ParamCount: Integer): Longword; external 'wrapcallbackaddr@{tmp}\CallbackCtrl.dll stdcall delayload';
function BtnCreate(hParent :HWND; Left, Top, Width, Height :integer; FileName :PAnsiChar; ShadowWidth :integer; IsCheckBtn :boolean) :HWND; external 'BtnCreate@{tmp}\botva2.dll stdcall delayload';
procedure BtnSetEvent(SK :HWND; EventID :integer; Event :Longword); external 'BtnSetEvent@{tmp}\botva2.dll stdcall delayload';
procedure gdipShutdown; external 'gdipShutdown@{tmp}\botva2.dll stdcall delayload';

#ifdef Webs
procedure LogoBtnClick(hBtn:HWND);
var
ErrorCode: Integer;
begin
ShellExec('open', '{#Webs}', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)
end;
#endif

function InitializeSetup():boolean; begin
ExtractTemporaryFile('logo.png');
ExtractTemporaryFile('botva2.dll');
ExtractTemporaryFile('CallbackCtrl.dll');
Result:=True;
end;

procedure InitializeWizard(); begin
with WizardForm do begin
hLogoBtn:=BtnCreate(WizardForm.Handle,12,320,100,3 5,ExpandConstant('{tmp}\logo.png'),1,False);
BtnSetEvent(hLogoBtn,BtnClickEventID,WrapBtnCallba ck(@LogoBtnClick,1));
end;
end;

procedure DeinitializeSetup();
begin
gdipShutdown;
end;
Reply With Quote
The Following User Says Thank You to sentinelks For This Useful Post:
aj12345 (02-12-2013)