FileForums

FileForums (https://fileforums.com/index.php)
-   Conversion Tutorials (https://fileforums.com/forumdisplay.php?f=55)
-   -   ASIS: Advanced Simple Installer Script (https://fileforums.com/showthread.php?t=99481)

pcblizzard 04-09-2022 13:39

Can anyone tell me what the music track is called or from which soundtrack it is, which is included by default with the download (i.e., what is named just “Music.mp3”)?

mausschieber 05-09-2022 02:27

Quote:

Originally Posted by pcblizzard (Post 498185)
Can anyone tell me what the music track is called or from which soundtrack it is, which is included by default with the download (i.e., what is named just “Music.mp3”)?

do you mean the last ASIS its from the Game Stray the other i don't know

pcblizzard 05-09-2022 02:39

Exactly, the music from ASIS (where as a template is the game "Stray", but I listened through the soundtrack and track 1 from the soundtrack sounds similar, but somehow not the same).
It's been the same everywhere so far (though I'm only with it since version 7.3.5 - what was before, I can't say of course).

KaktoR 05-09-2022 02:42

https://www.youtube. com/watch?v=37wUUn748iQ

L33THAK0R 05-09-2022 18:41

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?

L33THAK0R 05-09-2022 21:04

Sorry to fill up this thread with questions, but could anyone please tell me where abouts the logic is for the transition between CompactMode's Main-Window and the CRC-Window?

I use QuickSFV for CRC validation and was hoping to add a 3rd & 4th state to the "WizardForm.NextButton" (or whatever the label is for the CompactMode Install button), to allow it to launch a given Batch script, while displaying "Verify"/"cm:Verify", and then function as a Finish/Continue button after the script concluded.

Currently I've got the latter functionality working just fine, I'm just trying to figure out how to discard the separate CRC window to move it all to the one screen.

KaktoR 06-09-2022 00:03

Quote:

Originally Posted by L33THAK0R (Post 498203)
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?

You have to call function UnpackDLLFiles directly in function InitializeSetup

Quote:

Originally Posted by L33THAK0R (Post 498205)
Sorry to fill up this thread with questions, but could anyone please tell me where abouts the logic is for the transition between CompactMode's Main-Window and the CRC-Window?

I use QuickSFV for CRC validation and was hoping to add a 3rd & 4th state to the "WizardForm.NextButton" (or whatever the label is for the CompactMode Install button), to allow it to launch a given Batch script, while displaying "Verify"/"cm:Verify", and then function as a Finish/Continue button after the script concluded.

Currently I've got the latter functionality working just fine, I'm just trying to figure out how to discard the separate CRC window to move it all to the one screen.

If you want to use quicksfv instead of the crc page in compactmode you have to disable the crc page creation and call quicksfv instead.

L33THAK0R 06-09-2022 21:06

Quote:

Originally Posted by KaktoR (Post 498207)
You have to call function UnpackDLLFiles directly in function InitializeSetup

Ah alright I'll give that a shot!



Quote:

Originally Posted by KaktoR (Post 498207)
If you want to use quicksfv instead of the crc page in compactmode you have to disable the crc page creation and call quicksfv instead.

Would you happen to know by any chance what the label/function is that calls the crc page post-install, I cant for the life of me seem to figure it out!

L33THAK0R 06-09-2022 22:36

Sorry again to seemingly never run out of queries, I'm a bit of a brainlet, if it's at all alright would you be able to walk me through the values/arguments I should be attaching to "UnpackDLLFiles", I'm not too sure about the
Code:

(UnpFile: String): Boolean;
side of things, with trusty Dr. Google not really making clear what a "UnpFile" designation is.

KaktoR 07-09-2022 00:42

Quote:

Originally Posted by L33THAK0R (Post 498241)
Would you happen to know by any chance what the label/function is that calls the crc page post-install, I cant for the life of me seem to figure it out!

If you search for "#if CheckCRC" you will get all things related to crc check.

The crc page is a custom created page, "CurPageID = CRCPage.ID"

This page will be created here

Code:

    #if !CompactMode //if NOT compactmode (= normal mode)
      CRCPage := CreateCustomPage(wpInstalling, '', ''); //crc page will be created after wpInstalling page
    #else // if compact mode
      CRCPage := CreateCustomPage(wpInfoAfter, '', ''); //crc page will be created after wpInfoAfter page (compactmode works a bit different due to 1 page installer)
    #endif

Use Exec or Exec2 funtion on ssPostInstall step to start quicksvf.exe. You can search there for "#if UseBatch" to get an idea how it should look like with quicksvf.exe.

Quote:

Originally Posted by L33THAK0R (Post 498242)
Sorry again to seemingly never run out of queries, I'm a bit of a brainlet, if it's at all alright would you be able to walk me through the values/arguments I should be attaching to "UnpackDLLFiles", I'm not too sure about the
Code:

(UnpFile: String): Boolean;
side of things, with trusty Dr. Google not really making clear what a "UnpFile" designation is.

Example
Code:

function InitializeSetup(): Boolean;
begin
...
UnpackDLLFiles;
...

UnpFile is a custom string designated to UnpackDLLFiles function and is only valid inside this function.

L33THAK0R 08-09-2022 17:56

Got a bit of a different, but hopefully easier question to answer, are there any other variables that can determine the size of an element, outside of ScaleX/ScaleY? I've got a really annoying element that refuses to be resized, the image linked (here) demonstrates this, as every other element that has a "ScaleX" property has had it set to 100, with the exception of the client size, however this element at the top refuses to change. I've also searched for the approx. pixel length/height of the element with a +/- 20 variance in the script to try and find the value but alas to no avail. The reason as to my wanting to remove/resize this element is that once the page changes to CRCPage.Surface, the logo image I have attached, disappears as its parent is WizardForm.WelcomePage, and my separate image entry for CRCPage.Surface is cut off, as this rogue element is rendered on top of CRCPage.Surface.

its_gnar_again 10-09-2022 06:55

Question: Am I missing anything for the redists section for v7.3.4's settings? No matter what I do, the installer skips over the redist install when the checkbox is marked. I have tried using the {app} tag, where the specified redist folder is included in the archives, and the {src} tag, where the specified redist folder is in the same place the setup is in, but both of them don't work. My setup right now is like this:

Code:

[Redists]
Enable=1

Redist1.Enable=1
Redist1.Name=DirectX
Redist1.Level=0
Redist1.ItemType=CHECK
Redist1.Checked=1
Redist1.Enabled=1
Redist1.Exe32={app}\redist\dx.exe
Redist1.Exe64={app}\redist\dx.exe
Redist1.Param=


pcblizzard 11-09-2022 01:14

Funny, that's exactly the problem I'm having right now, and wanted to ask what the problem is. :) Both “DirectX” and “Microsoft Visual C++ 2015-2022” are simply ignored.

Code:

[Redists]
Enable=1

Redist1.Enable=1
Redist1.Name=Microsoft DirectX
Redist1.Level=0
Redist1.ItemType=CHECK
Redist1.Checked=1
Redist1.Enabled=1
Redist1.Exe32={app}\_redist\directx\DXSETUP.exe
Redist1.Exe64={app}\_redist\directx\DXSETUP.exe
;Redist1.Param=/silent

Redist2.Enable=1
Redist2.Name=Microsoft Visual C++ 2015-2022
Redist2.Level=0
Redist2.ItemType=CHECK
Redist2.Checked=1
Redist2.Enabled=1
Redist2.Exe32={app}\_redist\vc_redist_2015_2022\VC_redist.x86.exe
Redist2.Exe64={app}\_redist\vc_redist_2015_2022\VC_redist.x64.exe
;Redist2.Param=/q /norestart

And is it possible to say in the “settings.ini” that e.g., “Microsoft Visual C++ 2015-2022” is mandatory and the entry is preselected and not deselectable? In the normal Inno setup script [under “Components”] the “Fixed” command works, but not here.

KaktoR 11-09-2022 02:10

I checked quick, don't have really any time today, but the problem is somewhere in ssPostInstall step, at least debug mode tells me (the whole redist part is not processed).

I will look at it further tomorrow :)

Cesar82 11-09-2022 10:08

1 Attachment(s)
Quote:

Originally Posted by pcblizzard (Post 498279)
Funny, that's exactly the problem I'm having right now, and wanted to ask what the problem is. :) Both “DirectX” and “Microsoft Visual C++ 2015-2022” are simply ignored.

Code:

[Redists]
Enable=1

Redist1.Enable=1
Redist1.Name=Microsoft DirectX
Redist1.Level=0
Redist1.ItemType=CHECK
Redist1.Checked=1
Redist1.Enabled=1
Redist1.Exe32={app}\_redist\directx\DXSETUP.exe
Redist1.Exe64={app}\_redist\directx\DXSETUP.exe
;Redist1.Param=/silent

Redist2.Enable=1
Redist2.Name=Microsoft Visual C++ 2015-2022
Redist2.Level=0
Redist2.ItemType=CHECK
Redist2.Checked=1
Redist2.Enabled=1
Redist2.Exe32={app}\_redist\vc_redist_2015_2022\VC_redist.x86.exe
Redist2.Exe64={app}\_redist\vc_redist_2015_2022\VC_redist.x64.exe
;Redist2.Param=/q /norestart

And is it possible to say in the “settings.ini” that e.g., “Microsoft Visual C++ 2015-2022” is mandatory and the entry is preselected and not deselectable? In the normal Inno setup script [under “Components”] the “Fixed” command works, but not here.

Try with this hotfix (I didn't have time to test).


All times are GMT -7. The time now is 13:31.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
FileForums @ https://fileforums.com