Is it possible to call the "UnpackDLLFiles" function early, ideally at the initialisation of the wizard? I recently switched to using a VCLStyle skin instead of CJStyle skin (as CJStyles arent able to modify some GUI elements and aren't quite as versatile), however the DLL size difference between the two is alarmingly large (2.98MB vs 385KB). However, applying some very basic compression, such as the parameters used to pack a given "Setup.dll" significantly reduces the VCLStyle DLL to ~700kb, unfortunately though it seems I'm not able to get the wizard to extract the DLL before loading it, despite having the commands ordered to do so.
Code:
function InitializeSetup(): Boolean;
begin
Result := True;
ExtractTemporaryFile('SplitLib.dll');
ExtractTemporaryFile('Settings.ini');
#if VCL
FileCopy(ExpandConstant('{src}\VclStylesInno.dll'), ExpandConstant('{tmp}\VclStylesInno.dll'), False);
ExtractTemporaryFile('VclStylesInno.dll');
ExtractTemporaryFile('{#VCLName}');
LoadVCLStyle(ExpandConstant('{tmp}\{#VCLName}'));
I can't quite decipher the errors I get either as they simply say:
Code:
Runtime error (at 368:722):
Could not call proc.
&
Code:
Runtime error (at 400:5):
Could not call proc.
Am I missing something or is this sort of extracting and loading DLLs a bit too finicky for Inno Setup to handle?