View Full Version : ASIS: Advanced Simple Installer Script
pratikpatel8982
08-05-2021, 06:49
How to configure compressor.ini for razor mtx??
pratikpatel8982
08-05-2021, 07:00
Hi, I compressed a game using diskspan gui with pzlib3:m1+srep_new+razor_mtx. It was compressing fine but at last an error popped up (when razor_mtx) was compressing, it was something about memory reference or something like that, an in the conversion output folder, the .001 file was created but records.ini was not created, so I created it myself but when I extract it, I get crc mismatch error.
So now I've removed razor_mtx (which created error) and compressing again using plzib3 only..... (Hoping to not get any crc error again....)
EDIT: I've compressed the files again using pzlib3 only using diskpan 1.0.0.4 and it still gave CRC error. So the error was because of pzlib3 and I will post in its corresponding thread. Thank You!
L33THAK0R
21-05-2021, 07:05
UPDATE: it seems like MSC might be causing some trouble rather than XTool v0.3.9
Hi all,
I recently did a conversion of the original painkiller games using
msc (:mp3=1:wav=1:raw=1:bmf=9:tak=9:bmp=1:lzma,bt4,fb1 28,lc8) + XTool 2020 (xzlib) + srep + lolz and tried to jerry-rig ASIS v7.2.0 (v7.2.2a was giving me grief despite the forum users who tried to help with my issues) to work with XTool 2020, by replacing the xtool .exe and .dll's of ASIS v7.2.0, in their existing directories, with the .exe & .dll's that were in the resources directory for xtool v0.3.9, and additionally editing the ASIS arc.ini unpackcmd string as follows:
[External compressor:xprecomp,xZLib,xzlib,xLZ4,xlz4,xLZO,xlz o,xZSTD,xzstd,kraken]
header = 0
unpackcmd = XTool decode -t100p-1 - - <stdin> <stdout>
My issue is that the installer during decompression exits at ~1.5%, with no error code. It's a long shot but I was wondering if anyone might be able to help out, as I have some conversions currently running that are using XTool v0.3.9 features and formatting not available (as far as I know) with the previous version of XTool I was using.
Thank you for anyone taking the time to read this, any help would be greatly appreciated
Would this be possible with an older version like 7.2.0?
Still wondering about this. 7.2.2 is still giving me issues, and for some reason, stuff just "works" under 7.2.0, but I still can't get archives set with a password to work with either. 7.2.2 keeps refusing my records.ini and extracts nothing, and 7.2.0 just says "wrong password".
@Kaktor, the last version of A.S.I.S. is THIS (https://www.fileforums.com/showpost.php?p=490512&postcount=944).
L33THAK0R
08-06-2021, 04:03
Hi all,
Is it possible to rename a series of files extracted OR all files with a given extension, post-extraction, or would this require a rewrite of the script?
Masquerade
08-06-2021, 06:35
Hi all,
Is it possible to rename a series of files extracted OR all files with a given extension, post-extraction, or would this require a rewrite of the script?
Simply include a bat file in your archive with the required commands then use Exec2 to run the bat file in the "ssPostInstall" phase.
L33THAK0R
08-06-2021, 15:19
Simply include a bat file in your archive with the required commands then use Exec2 to run the bat file in the "ssPostInstall" phase.
I completely forgot about using the redistributables function! Argh, sorry for the silly question, thank you for your assistance!
Masquerade
10-06-2021, 11:00
I assume ISDoneStop; will stop the install timer?
I assume ISDoneStop; will stop the install timer?
In the ISDone documentation it says:
1)
function ISDoneStop: boolean;
During a test pass, it calculates all data by checkpoints and writes to the file specified in the initialization, clears some variables, etc.
2)
Stopping internal library timers, freeing memory from library variables, writing the records.inf file during a test run, etc.
Original information:
1)
при тестовом проходе рассчитывает все данные по чекпоинтам и записывает в файл, заданный в инициализации, очищает некоторые переменные, и т.д.
2)
остановка внутренних таймеров библиотеки, освобождение памяти от переменных библиотеки, запись файла records.inf при тестовом прогоне, и т.д.
I think it's a deinitialization function (like IsDoneUnInit).
But if you call IsDoneInit and after the procedure calls ISDoneStop it is necessary to call UnloadDLL(<isdonedllpath>) to be able to initialize the IsDoneInit function again (If you don't call UnloadDLL you will get an error message).
I can say this because I had to do this in order to extract the decompressor files from DLL Setup.dll in CIU.
Initially CIU extracts only Records.ini to check the installer type information, then Isdone is rebooted to extract the decompressor files and finally if everything is ok, reboots again to perform game extraction.
Masquerade
10-06-2021, 23:45
I am mainly trying to pinpoint when the installer timer is stopped so I can move this point to further in the script to keep the timer running despite all archives finishing extraction.
I am mainly trying to pinpoint when the installer timer is stopped so I can move this point to further in the script to keep the timer running despite all archives finishing extraction.
As far as I could understand, ISDoneStop is always between the begin end of ISDoneInit.
Maybe you shouldn't call IsDoneStop without successfully initializing it.
Other than that you can initialize and finalize whenever you want (You can initialize in InitializeWizard and Finalize in DeinitializeSetup if necessary (Just placing a globar variable to receive the result of the ISDoneInit function.
L33THAK0R
16-06-2021, 16:00
Hi all,
Does anyone know how to force the redists box for ASIS to be ticked? I'm currently using the redists to force some scripts to run and don't want there to be any chance of the end-user mucking up the install.
Another question I have is does anyone know why, in v7.2.0 compact mode, the redists box remains unavailable, however in v7.2.2a compact mode, the redist box is selectable?
EDIT: After editing the v7.2.0 script a bit I got the redists to work, however I'm yet to figure out the answer to my first question.
Masquerade
16-06-2021, 23:45
L33THAK0R
Why not go to the ssPostInstall part of the setup and write an Exec2 statement to run your script?
This way, the script will be ran instantly after the files are extracted, Regardless of whether the user opts to install redists or not.
L33THAK0R
17-06-2021, 00:27
L33THAK0R
Why not go to the ssPostInstall part of the setup and write an Exec2 statement to run your script?
This way, the script will be ran instantly after the files are extracted, Regardless of whether the user opts to install redists or not.
Honestly I investigated your suggestion and using the redists seems like the easiest solution. Did about 5 minutes of looking through the script (I posted my question rather hastily, as I was excited to finish my repack of the series this method is required for, and was caught up in the moment talking to some lads and a quite skilled re-packer about it.), and figured out the function/call/whatever its classified as that's responsible for checking if the redists are selected is "UseRedists" (for anyone looking for a similar solution in the future) on line ~4918 (I've modified ASIS v7.2.0 a fair bit to suit my needs better so the line number might not be exact), and it works perfectly.
L33THAK0R
17-06-2021, 02:33
L33THAK0R
Why not go to the ssPostInstall part of the setup and write an Exec2 statement to run your script?
This way, the script will be ran instantly after the files are extracted, Regardless of whether the user opts to install redists or not.
Just wanted to update and say yeah you're right ssPostInstall is heaps cleaner to organise than a redist, decided to take your advice, thanks for the help!
L33THAK0R
20-06-2021, 23:48
Hi all,
Does anyone know how to add additional commands/options to srep for unpacking with ASIS? I'm currently using pzlib v3 (xtool doesn't inflate the files as well) + srep + lolz/rz (experimenting with different combinations right now) for the 2015 title "Mad Max" and I always seem to get either a -1 or CRC fail error at some point when unpacking. According to this thread (https://krinkels.org/threads/oshibka-pri-raspakovke-srep-3-93a-is-not-checksum-of-original-data.2616/#post-23908) using the "-hash" command to ignore bad CRC checks, may resolve this bug, and if not then I'll just have to investigate a different method. Would it be as simple as editing the arc.ini to include a srep header or would I need to add/edit something in the script? Thanks for taking the time to read this post.
Masquerade
21-06-2021, 10:18
Hi all,
Does anyone know how to add additional commands/options to srep for unpacking with ASIS? I'm currently using pzlib v3 (xtool doesn't inflate the files as well) + srep + lolz/rz (experimenting with different combinations right now) for the 2015 title "Mad Max" and I always seem to get either a -1 or CRC fail error at some point when unpacking. According to this thread (https://krinkels.org/threads/oshibka-pri-raspakovke-srep-3-93a-is-not-checksum-of-original-data.2616/#post-23908) using the "-hash" command to ignore bad CRC checks, may resolve this bug, and if not then I'll just have to investigate a different method. Would it be as simple as editing the arc.ini to include a srep header or would I need to add/edit something in the script? Thanks for taking the time to read this post.
I had no issues decompressing mad max when using profrager's cls-srep.
If you are using srep.exe to decompress, try with cls-srep
L33THAK0R
21-06-2021, 10:30
I had no issues decompressing mad max when using profrager's cls-srep.
If you are using srep.exe to decompress, try with cls-srep
Darn, might be the version of pzlib I'm using then! I've been using the stock standard cls-srep that ASIS v7.2.0 ships with, time to test out some older versions of pzlib me thinks.
:( Sad8669
21-06-2021, 10:39
Try this thread (https://fileforums.com/showthread.php?t=104475).
Most probably caused by different versions of PZlib.
Masquerade
21-06-2021, 12:18
Darn, might be the version of pzlib I'm using then! I've been using the stock standard cls-srep that ASIS v7.2.0 ships with, time to test out some older versions of pzlib me thinks.
Why are you not using xtool?
L33THAK0R
21-06-2021, 16:18
Why are you not using xtool?
Best I can get with xtool (zlib codec, version 0.3.20), with srep and lolz, is ~9gb output (I forgot if thats with preflate or reflate, but I tried both), pzlib v3 is able to squash the input down to ~3gb, I know it's possible (and likely at this point) that the outputs from pzlib v3 may be corrupt, however they're in-line with results claimed by other users on this forum.
The Cesar update
v7.3.1
__________________________________________________ ___
- ASIS is now fully compatible with DiskSpan GUI v2.0+ (thanks to Cesar82)
> Old DiskSpan GUI versions aren't compatible anymore
> You can still use your own archives with ASIS (make Setup.dll manually!)
> ASIS is now x64 ONLY!
- Remade the Redists code part (thanks to Cesar82)
> You can now use theoretical unlimited items for your Redists
- Added options for InternalDLL and PasswordDLL inside Script.iss (thanks to Cesar82)
> Putting Setup.dll next to the script will compress the DLL file into the Setup.exe file
> Same password used in DiskSpan_GUI to extract decompressors from Setup.dll files
- Changed components (thanks to Cesar82)
> The components are now exclusive for game collections
- Added Tasks (thanks to Cesar82)
> With tasks you can define optional content to install for your installation, such
as languages, soundtrack, wallpapers, ... (this was the former components)
- It is now possible to use TXT and RTF files for EULA (thanks to Cesar82)
- Changed the time remaining label (thanks to Cesar82)
> It will now be visible with more then one archive.
Progress is now calculated according to the size of the arc generated by DiskSpan GUI.
Example: If DiskSpan GUI generates 2 archives, the first 400 mb and the second 100 mb means
that the first archive will occupy 80% and the second 20%.
So when extracting arc1, 0.80 will be passed in the second parameter (PctOfTotal) of IsDone's
IsArcExtract function. For the second file 0.20 will be sent.
If you don't have the sizes in Records.ini, it will be divided by the number of files, which is 0.50/0.50.
If you don't use DiskSpan GUI for generating records.ini, you can do it manually (like with records.inf)
- Updated BASS.dll library (thanks to Cesar82)
- Updated some other things (thanks to Cesar82)
I did many tests with this, but maybe I didn't test all 100%. If you encounter any bugs, let us know.
First post updated with new images.
Fix ASIS error on disable task page:
Change text in script line 4063.
#ifdef UseTasks
change to:
#if UseTasks
L33THAK0R
06-07-2021, 19:05
Would it be possible to add some of the changes to the CheckCRC section of ASIS v7.3.1 to v7.2.0? Specifically line 5527 under the [Custom Messages] section: english.label2={#if CompactMode}Overall progress:{#else}Total files: %1 Files processed: %2 Ok: %3 Missing: %4 Bad: %5{#endif}
I attempted to do so myself but was met unsucessful.
Would it be possible to add some of the changes to the CheckCRC section of ASIS v7.3.1 to v7.2.0? Specifically line 5527 under the [Custom Messages] section: english.label2={#if CompactMode}Overall progress:{#else}Total files: %1 Files processed: %2 Ok: %3 Missing: %4 Bad: %5{#endif}
I attempted to do so myself but was met unsucessful.
Send me the source code of v7.2.0 (I don't have it anymore) and I will look into it.
L33THAK0R
07-07-2021, 17:39
Send me the source code of v7.2.0 (I don't have it anymore) and I will look into it.
Thank you so much for offering to help! Attached is ASIS v7.2.0 (for anyone else unable to find it) as well as just the script for v7.2.0.
L33THAK0R
08-07-2021, 05:13
Like this?
Argh, yeah, completely forgot v7.2.0 would have a "custom messages.iss", sorry for bothering you with such a trivial issue, thanks so much, this is a massive help!
To make first letter uppercase for languages in Tasks page when choosing English as the setup language, go to line (5541) in "Script.iss" and change:
{#if UseComponents}english.Compenglish=english{#endif}
{#if UseComponents}english.Compfrench=french{#endif}
{#if UseComponents}english.Compgerman=german{#endif}
{#if UseComponents}english.Compitalian=italian{#endif}
{#if UseComponents}english.Compspanish=spanish{#endif}
{#if UseComponents}english.CompMexican=Mexican{#endif}
{#if UseComponents}english.Comppolish=polish{#endif}
{#if UseComponents}english.Comprussian=russian{#endif}
{#if UseComponents}english.Compportuguesebrazil=Portugu ese (Brazil){#endif}
{#if UseComponents}english.Compczech=czech{#endif}
to:
{#if UseComponents}english.Compenglish=English{#endif}
{#if UseComponents}english.Compfrench=French{#endif}
{#if UseComponents}english.Compgerman=German{#endif}
{#if UseComponents}english.Compitalian=Italian{#endif}
{#if UseComponents}english.Compspanish=Spanish{#endif}
{#if UseComponents}english.CompMexican=Mexican{#endif}
{#if UseComponents}english.Comppolish=Polish{#endif}
{#if UseComponents}english.Comprussian=Russian{#endif}
{#if UseComponents}english.Compportuguesebrazil=Portugu ese (Brazil){#endif}
{#if UseComponents}english.Compczech=Czech{#endif}
Edit:
If I disable Components or removed Component2 from settings.ini I get this error after choosing setup language:
https://i.imgur.com/Qixgzpum.jpg
Thanks for reporting.
The problem comes somewhere from the tasks
I will look at it.
Thanks for reporting.
The problem comes somewhere from the tasks
I will look at it.
Change in all lines that refer to components in the [CustomMessages] section from:
{#if UseComponents}
To:
{#if UseComponents || UseTasks}
These custom messages are also used for tasks.
I've been out of town, cell phone only(notepad) for a couple of weeks, so I can't change the script and post a fix.
This fixed the issue, but there are a new one :D
If you disable components, the WizardForm.NextButton is disabled and you can't proceed.
I spend the half day to find the error but all of this doesn't make any sense to me.
This fixed the issue, but there are a new one :D
If you disable components, the WizardForm.NextButton is disabled and you can't proceed.
I spend the half day to find the error but all of this doesn't make any sense to me.
Run Asis in inno setup Debug mode, and after the nextbutton is disabled, search for "wizardForm.NextButton.Enabled" and see which line has a dot to the left of the line indicating that the line was executed. let me know the line number.
Delete Line 4817
if CurPageID = wpWelcome then
begin
...
GetFreeSpaceCaption(nil);
Hotfix added
I guess this was just a false copy&paste by accident ;)
Hi!
Can someone please make a step-by-step guide on how to use ASIS with DiskSpan GUI
because as a little dummy I am, I can't make it work... It always freezes when pressing install.
Thanks, Zsuvalo
mausschieber
14-07-2021, 01:46
Hi!
Can someone please make a step-by-step guide on how to use ASIS with DiskSpan GUI
because as a little dummy I am, I can't make it work... It always freezes when pressing install.
Thanks, Zsuvalo
have you read the topic in its own thread? if not then here (https://fileforums.com/showthread.php?t=104533)
I finally made it work by uncommenting line #8 in the script so the Setup.dll gets merged into the .exe. It works perfectly now.
In any case you need Setup.dll.
Setup.dll will be created by DiskSpan GUI if the process is complete. You can also create it manually if you don't use DiskSpan GUI.
However, like you already find out, you can include Setup.dll into Setup.exe by uncommenting Line 8 in Script.iss, move Setup.dll next to Script.iss and then compile it.
Hello,
I wonder if there's a way to run batch script directly after finished extracting a certain data file (e.g Data-01.bin), and when it finished it continue to extract the next data file.
Thanks.
With v7.2.0 you could define the file location to use for components but now (v7.3.1) you can no longer do that, how am I supposed to link components and compressed archives? I also see no option do to so with the newly added 'tasks'... I'm probably just being stupid but I would like some clarification.
With v7.2.0 you could define the file location to use for components but now (v7.3.1) you can no longer do that, how am I supposed to link components and compressed archives? I also see no option do to so with the newly added 'tasks'... I'm probably just being stupid but I would like some clarification.
With the current version of ASIS you configure tasks in DiskSpan GUI by adding a new Data.bin and specifying a value in the task combobox.
The same goes for a language that will only be installed if the installer is started in the corresponding language.
To install the same Data.bin for more than one task, manually indicate the tasks in the combobox, separating by comma (The same goes for languages).
Tasks must be configured in ASIS Settings.ini starting with Task 1 (each line of the asis checklistbox is counted as a task even if it is one ItemType GROUP) .
With v7.2.0 you could define the file location to use for components but now (v7.3.1) you can no longer do that, how am I supposed to link components and compressed archives? I also see no option do to so with the newly added 'tasks'... I'm probably just being stupid but I would like some clarification.
You link them in records.ini
Example:
Component1.Name=GAME 1
Component1.ItemType=CHECK
Component1.Size=5.00 GB
Component1.Level=0
Component1.Checked=1
Component1.Enabled=1
[Record1]
Type=FreeArc_Original
Source={src}\Game1.bin
Output={app}\
Disk=1
Component=1
Size=301.89 MB
----------------------------
Task1.Name=Languages // This task is just a GROUP, no files linked to it
Task1.ItemType=GROUP
Task1.Size=0
Task1.Level=0
Task1.Checked=1
Task1.Enabled=1
Task2.Name=cm:EN
Task2.ItemType=RADIO
Task2.Size=500 mb
Task2.Level=1
Task2.Checked=1
Task2.Enabled=1
[Record2]
Type=FreeArc_Original
Source={src}\English.bin
Output={app}\
Disk=1
Component=1
Task=2
Size=100 MB
L33THAK0R
24-07-2021, 08:28
Is it possible to get ASIS to read a checksum file from within the {app} directory? I'm testing out combining checksums based on end-user selection to be able to verify all selected items (currently just verifying main/core files), and my current implementation is to put a bunch of respectively named dummy checksum files within the/one of the core archive/s, with each optional/component archive containing its own relevant checksum, which overwrites the dummy checksum during installation. My hope is to execute a script to combine these all together (using the batch "copy" command) to merge said checksums into one complete checksum file to be used by ASIS post-install for verification. However during the compile stage it seems ASIS isn't keen on letting this happen (https://imgur.com/a/gunLlnn).
Not sure, but maybe by changing all constants {tmp} to {app} for #CRCFileName ispp.
L33THAK0R
24-07-2021, 21:18
UPDATE 1: Copying the combined checksums works (checked the copied file in the {tmp} directory), however, it seems like Inno Setup isn't too happy about one of its files being replaced (https://imgur.com/a/2IFNDvx), I'll probably have to use something like QuickSFV and get the setup to launch a batch script if CRC's are enabled.
Not sure, but maybe by changing all constants {tmp} to {app} for #CRCFileName ispp.
Seems like that didn't work, I'm gonna try to figure out the whole pascal scripting nonsense and see if I can copy a file from the {app} directory to the {tmp} directory.
UPDATE 1: Copying the combined checksums works (checked the copied file in the {tmp} directory), however, it seems like Inno Setup isn't too happy about one of its files being replaced (https://imgur.com/a/2IFNDvx), I'll probably have to use something like QuickSFV and get the setup to launch a batch script if CRC's are enabled.
Seems like that didn't work, I'm gonna try to figure out the whole pascal scripting nonsense and see if I can copy a file from the {app} directory to the {tmp} directory.
Edit: Make changes in Settings.ini (only add RunFromAppFolder= key)
[CRCCheck]
...
...
RunFromAppFolder=0/1
If set to 1, the Hash file will be copied to {app} folder and will be executed from there instead of {tmp}.
If you want to merge some hash files together, you have to do it inside {tmp} folder first. Just make sure you do the merge operation before FileCopy Line 5004 (for NormalMode) and Line 5264 (for CompactMode).
L33THAK0R
25-07-2021, 03:10
Edit: Make changes in Settings.ini (only add RunFromAppFolder= key)
[CRCCheck]
...
...
RunFromAppFolder=0/1
If set to 1, the Hash file will be copied to {app} folder and will be executed from there instead of {tmp}.
If you want to merge some hash files together, you have to do it inside {tmp} folder first. Just make sure you do the merge operation before FileCopy Line 5004 (for NormalMode) and Line 5264 (for CompactMode).
Thank you for this! I'll definitely see if I can carry these changes over to v7.2.0 (I can't seem to get my head around versions past this version but currently, and for the foreseeable future, my needs are pretty basic regarding setup functionality). I was able to enact my previous plans of using QuickSFV (https://imgur.com/a/ycQ2838) with just a few changes in the script. I'm sorry to have caused you the trouble, but hopefully I'll be able to put your effort to good use!
I recently downloaded v7.3.1 and it seems promising enough with what I looked at, but I am having trouble trying to compile a setup so I can test to see if I can get anything to work.
Line 4066: Column 9: Unknown identifier "I" - This error pops up. Without changing anything in the stock Settings.ini, that error doesn't show. The line is something related to the "task list", but the only thing I changed was disabling it because I don't want to use it. What's the issue?
Send me your settings.ini
I recently downloaded v7.3.1 and it seems promising enough with what I looked at, but I am having trouble trying to compile a setup so I can test to see if I can get anything to work.
Line 4066: Column 9: Unknown identifier "I" - This error pops up. Without changing anything in the stock Settings.ini, that error doesn't show. The line is something related to the "task list", but the only thing I changed was disabling it because I don't want to use it. What's the issue?
This error I think is because you didn't replace the old script with the hotfix posted HERE (https://www.fileforums.com/showpost.php?p=493115&postcount=1023).
Please advise if you still continue to display the compilation error after replacing the script with the hotfix.
Late response but yeah, the hotfix did work, forgot about that. Thanks Cesar.
2 more questions. How would I include a batch script into my setup, and run it out after decompression of the archives? I was looking at this method right here (https://fileforums.com/showpost.php?p=447100&postcount=4) for MGSV and it needs said batch script to run after install to rebuild the chunk files. I do remember seeing a post on how to do it, but that was awhile ago and I didn't need it. Second question is, is there a way to make the script not have the ability to create/use Start menus at all? Someone mentioned to me that even if the "Don't create a start menu" button is checked, it still makes start menus.
Masquerade
11-08-2021, 23:02
Search ssPostInstall
In that section, put Exec2(ExpandConstant('{app}\mybatchfile.bat'))
Afair this is correct syntax.
LordxKinG
12-08-2021, 01:48
Hii, at last version v7.3.1, how to create installer without record.ini file?
v7.3.4
__________________________________________________ ___
- Added UpdateMode
> If enabled setup will not create uninstall files, icons or {app} folder
> Exe check in Settings.ini is required to proceed to installation
> Only aviable in compact mode
- Fixed MB label for some languages (thanks to Cesar)
- Added button sounds
- Fixed a bug which exits the installer if searching for a archive and if installer asks if to quit, you select "No" the installer quits (this)
> The problem was a false ISDoneError boolean in function BrowseArcFile
- The MediaPlayer library is no longer required to play button sounds (thanks to Cesar for the hint)
- Some other things
v7.3.3
__________________________________________________ ___
- Added feature for folder deletion after uninstalling
v7.3.2
__________________________________________________ ___
- Some changes for DSG 2.0.0.5+
- Added Component key to [Executable#]'s
v7.3.1b
__________________________________________________ ___
- Corrected a few things in help file
- Added RunFromAppFolder= key for [CRCCheck] section
> If set to 1, the Hash file will be read from {app} folder
If set to 0, the Hash file will be read from {tmp} folder
- Added [Batch] section
> With this you can run a defined batch file after Setup is done
- Fixed DiskSpaceImage (just a small pixel adjustment)
v7.3.1
__________________________________________________ ___
- ASIS is now fully compatible with DiskSpan GUI v2.0+ (thanks to Cesar82)
> Old DiskSpan GUI versions aren't compatible anymore
> You can still use your own archives with ASIS (make Setup.dll manually!)
> ASIS is now x64 ONLY!
- Remade the Redists code part (thanks to Cesar82)
> You can now use theoretical unlimited items for your Redists
- Added options for InternalDLL and PasswordDLL inside Script.iss
> Putting Setup.dll next to the script will compress the DLL file into the Setup.exe file
> Same password used in DiskSpan_GUI to extract decompressors from Setup.dll files
- Changed components (thanks to Cesar82)
> The components are now exclusive for game collections
- Added Tasks (thanks to Cesar82)
> With tasks you can define optional content to install for your installation, such
as languages, soundtrack, wallpapers, ... (this was the former components)
- It is now possible to use TXT and RTF files for EULA
- Changed the time remaining label
> It will now be visible with more then one archive.
Progress is now calculated according to the size of the arc generated by DiskSpan GUI.
Example: If DiskSpan GUI generates 2 archives, the first 400 mb and the second 100 mb means
that the first archive will occupy 80% and the second 20%.
So when extracting arc1, 0.80 will be passed in the second parameter (PctOfTotal) of IsDone's
IsArcExtract function. For the second file 0.20 will be sent.
If you don't have the sizes in Records.ini, it will be divided by the number of files, which is 0.50/0.50.
If you don't use DiskSpan GUI for generating records.ini, you can do it manually (like with records.inf)
- Updated BASS.dll library
- Updated some other things
v7.2.2
__________________________________________________ ___
- Updated compressors
- On cancelling installation the {app} folder will now be deleted
- Added XTool 2020 support
- Added DiskSpan_GUI support (thanks to Cesar82)
- Fixed cancel button
- Removed some leftovers from previous versions in script which are not used anymore
- Moved 'DefaultInstallDir=' key to [Settings] section
> [ExtractSettings] section removed
- Fixed title on ExitSetupMessageBox if special chars were used (no hieroglyphs)
- Updated DiskSpan_GUI to latest version
- Fixed a problem with lower/uppercase "FreeArc_X" in records.ini reading
- Added "IconFileName=" key to [Executable#] section (a)
- Fixed several hieroglyphs (a)
- Removed COMPRESSOR_GUI (a)
- Updated DiskSpan_GUI to latest version (a)
v7.2.0
__________________________________________________ ___
- Fixed CRC Check from previous update
- Fixed InfoBefore and EULA
> Before it was possible to change the texts
- It is now possible to use both TXT and RTF files for InfoBefore and EULA
- Updated russian localization
- Updated french localization
- Redone compressor settings
> It now uses COMPRESSOR_GUI to change the settings
> Thanks to Cesar82
- CompactMode now have it's own information page
> It is located near about button
> This opens a new window which will show you informations about the game or your repack
- If WebsiteButtonText is empty, a custom message 'Website' will be used instead
- Added Czech language to installer
> "a few" messages still have to be translated
- Added a new checkbox "Limit RAM and CPU usage" to both modes
> If this checkbox is checked, RAM and CPU usage will be limited during installation
- Added a small bitmap to SelectDirPage to Free/Need space labels
- It is now possible to use special characters like ™ for your application
> Before you got strange hieroglyphs
- Fixed time remaining check if [Record2] is present in records.ini
- Fixed misplaced buttons and texts on 125%+ desktop scale (hopefully for ever now)
- Fixed a bunch of small errors, misplacings and code duplicates
- Fixed a bunch of this annoying error messages on compiling
- Updated help file
- Updated VCL viewer source code
- Added UE4 decryption tool
> Thanks to Razor12911
v7.1.7
__________________________________________________ ___
- Fixed "OK" button on components page (CompactMode) with higher desktop resolutions
> Hopefully this will be the last one
- Fixed "Background" button on FinishedPage with special settings
- Added a new [Executable#] section to Settings.ini
> There will be set executables for shortcuts
- Reworked creating icons for your application
> It is now possible to set/create more then one icon
> Theoretical you can create an infinite number of shortcuts
- Updated all languages
- Some script cleanup, now be less unneccessary doubled codes and trash
- Updated Help file
- Hotfix: Fixed hash check if more then from 1 disc/iso is installed
> Before the file was extracted on hash page, and if you were installing from more
then one disc/iso and changed the disc/iso, Installer couldn't extract the file
because Setup.exe was not in {src} folder anymore, so you had to remount the disc/iso
and click "Retry" to start the hash check. This is now fixed.
- Hotfix: Fixed broken FinishPage if CRC checkbox was checked (NormalMode)
- Hotfix 2: Fixed shortcut creation
- Hotfix 3: Fixed misplaced cancel button if vcl style was used (NormalMode)
v7.1.6
__________________________________________________ ___
- Fixed diskspan file search window
> Clsinit function was missing and is now back
- Fixed positioning of CRC Checkbox on CompactMode
- If no Setup.ico is present, compiler will use default icon now instead of giving a error message while compile
- Added PMT support for MPZ
- Changed Time Remaining label
> Before it showed "Infinity" if you used more then one record inside records.ini.
If you use more then one record, Time Remaining will not show up anymore.
v7.1.5
__________________________________________________ ___
- Changed BPK decompressor (thanks to Masquerade)
- Added PMT
> Atm only for RAZOR Archiver
- Added Oodle8 support
- Fixed doubled installation display size (thanks to Cesar82)
- Removed DLZ
v7.1.4a
__________________________________________________ ___
- Fixed installation size in CompactMode if components were used and all components were unchecked (Checked=0)
v7.1.4
__________________________________________________ ___
- Updated some compressors
- Fixed Redist CB if Compactmode and Components is used
- Added translations for 'Click to select components...' message in compact mode
v7.1.3
__________________________________________________ ___
- Reworked Redist page
- Active language will be added to INIFile now
- Added file checks for components (thanks to Cesar82)
v7.1.2
__________________________________________________ ___
- Added Redist installation to CompactMode
- Added ISHash library to CompactMode (now really!)
- Updated ISHash library (thanks to peterf1999)
- Added components
> With this you can unpack language archives or other archives
> Set them in Settings.ini
> You don't need to add them to Records.ini
- Reworked Components (thanks to Cesar82)
- Updated 7z to v19.0.0.0
- Changes 'Size=' key in Settings.ini
> It is now possible to write size as follow:
b,B,k,K,kb,KB,Kb,m,M,mb,MB,Mb,g,G,gb,GB,Gb,t,T,tb, TB,Tb,p,P,pb,PB,Pb
- Fixed slideshow
> Before it always show the first picture twice.
- Fixed not correct size in Windows Control Panel
- Fixed some other bugs
- Fixed component progress on ProgressBar
- Fixed ScrollBar on LicensePage and InfoBeforePage if you use cjstyle skin
- Added Skin support to LanguageBox (thanks to Cesar82)
- Added Skin support to Uninstall progress
- Changed appearance in Components page
- Added compact mode to installer
> This is an option for minimalistic setup with only one page
> In CompactMode you can only use SFV and MD5 files for CRC check
I will implement ISHash library later in CompactMode
- Fixed LogButton in CRC Check page
- Fixed other bug if CRC check is disabled
- Added checkbox for "Create Uninstaller"
> If checkbox is checked, Uninstall files will be created
> If checkbox is not checked, no uninstall files will be created
- Added [INISettings] to Settings.ini
> With this you can change INI settings after installation is done
- Fixed french translation for CRC check page (forgot some spaces)
- Added RazorTools
> ZSTD Precompressor
> FIFA 19 Cas Decryption Tool + Precompressor
> Project CARS 2 Bff Decryption Tool
> LZX Precompressor
- Fixed DPI calculation if text scaling in Windows Display Settings was greater than 100% (thanks to Cesar82)
v7.1.1b
__________________________________________________ ___
- Fixed Music Button
- Fixed Hardware detection (thanks to peterf1999 for the help)
- Fixed Finish Button if CRC Check is not used
- Website Button is now not visible on Installing Page
- Added Background ON/OFF button on Installing Page
> With this button you can toggle install background on/off
- Changed background color of License and Info before memo to a bright color
> On dark themes you couldn't read text properly before
- Made Installer window a bit bigger for better reading
- Added missing dll to ztool
- Added ability to change Hardware label colors in [SystemRequirement] section
- Fixed some other bugs
v7.1.1a
__________________________________________________ ___
- Removed ISUtils.dll
- Added green indicator if Hardware match the requirement
- Updated BASS Audio Library to v2.4.14.0
- Added some help to Settings.ini
v7.1.1
__________________________________________________ ___
- Updated some compressors
- Added option to make records.ini internal
- Rebuild file handling for compressors
- Updated file structure
- Removed old code
- Removed Compiler.exe for ISEE
> You have to use IS (u) now
- Fixed ProgressBar flickering
> It had something to do with % (TLabel)
> % is now (StaticText)
- Added Time Remaining and Time Elapsed
> Time Remaining is broken at the moment
- Removed ProgressBarLabelColor
> It is not working with (StaticText)
- Increased Setup Window size
- Added ShowLanguageBox= option
- Moved CRC Check CB to DirPage
- Fixed CPU requirement calculation
- Rounded DirectX version number (from xy,z to xy)
- It is now possible to use RGB Color instead of BGR
- Fixed Music and Website Buttons if one of them are disabled
- Fixed compile error if AFR "019" is enabled
- Fixed error if not using certain options
- Added ISHash library (thanks to peterf1999)
> Removed QuickSFV
> Valid file types: md5, sha1, sha256, sha512
- Overhauled SelectDirPage a bit
- Removed string "x 1 (Running)" from GPU label
- Added pause button on installer
> With this you can pause the installation
- Fixed PercentLabel for diskspan archives
Hii, at last version v7.3.1, how to create installer without record.ini file?
Records.ini is needed.
However you can include Records.ini file into Setup.dll file.
Hello to all friends, as always I thank in advance all the work you do you are always super!
Here I list the various errors found and some changes made.
ASIS 7.3.1B - Works great.
ASIS 7.3.1C UPDATE - DOES NOT work, in practice the installation continues and after it has finished the extraction it says that it has been completed BUT in reality it does not install and does not extract any type of file leaving only the uninstall folder, in addition it seems which hangs in windows activities for a while.
__________________________________________________ ________________
In ASIS 7.3.1B I can not install only what you select, as in a screenshot in practice if I select only 3 languages and do not flag the rest of the language packs ASIS installs them the same, I understand that in the "Records. ini "I have added them but how can you make a system that the user chooses what to install and which not even if the pack languages are present?
(in Windows Phone Installer, this type of problem does not exist) could ASIS be extended or at least in some way modified, which more or less has the same function? it would be an incredible turning point, I know it is an abnormal request but it would really be the best.
Thanks for everything and sorry my english i used google translate. xD
You have to define the components/tasks in records.ini
Example:
Task2.Name=cm:EN
Task2.ItemType=CHECK
Task2.File=1
Task2.Size=1 mb
Task2.Level=1
Task2.Checked=1
Task2.Enabled=1
Task3.Name=cm:IT
Task3.ItemType=CHECK
Task3.File=1
Task3.Size=1 mb
Task3.Level=1
Task3.Checked=1
Task3.Enabled=1
-----------------------------
[Record2]
Type=Freearc_Original
Source={src}\Italian.TEST
Output={app}\
Disk=1,2
Task=3 //Task=3 because italian language in Settings.ini is Task3
[Record3]
Type=Freearc_Original
Source={src}\English.TEST
Output={app}\
Disk=1,3
Task=2 //Task=2 because english language in Settings.ini is Task2
You have to define the components/tasks in records.ini
Example:
Task2.Name=cm:EN
Task2.ItemType=CHECK
Task2.File=1
Task2.Size=1 mb
Task2.Level=1
Task2.Checked=1
Task2.Enabled=1
Task3.Name=cm:IT
Task3.ItemType=CHECK
Task3.File=1
Task3.Size=1 mb
Task3.Level=1
Task3.Checked=1
Task3.Enabled=1
-----------------------------
[Record2]
Type=Freearc_Original
Source={src}\Italian.TEST
Output={app}\
Disk=1,2
Task=3 //Task=3 because italian language in Settings.ini is Task3
[Record3]
Type=Freearc_Original
Source={src}\English.TEST
Output={app}\
Disk=1,3
Task=2 //Task=2 because english language in Settings.ini is Task2
Hi KaKtoR, I did as you told me and also corrected the numbers that I had previously busted, but the installer freezes and remains locked until I close it from activities .. this is the file I corrected, and that's the screenshot of how it is now... What am I doing wrong? :'(
[Record1]
Type=Freearc_Original
Source={src}\Data.TEST
Output={app}\
Disk=1
Component=1
[Record2]
Type=Freearc_Original
Source={src}\English.TEST
Output={app}\
Disk=1,2
Task=2
[Record3]
Type=Freearc_Original
Source={src}\Italian.TEST
Output={app}\
Disk=1,3
Task=3
[Record4]
Type=Freearc_Original
Source={src}\French.TEST
Output={app}\
Disk=1,4
Task=4
[Record5]
Type=Freearc_Original
Source={src}\Spanish.TEST
Output={app}\
Disk=1,5
Task=5
[Record6]
Type=Freearc_Original
Source={src}\Polish.TEST
Output={app}\
Disk=1,6
Task=6
[Record7]
Type=Freearc_Original
Source={src}\German.TEST
Output={app}\
Disk=1,7
Task=7
[Record8]
Type=Freearc_Original
Source={src}\Por-Brazil.TEST
Output={app}\
Disk=1,8
Task=8
[Record9]
Type=Freearc_Original
Source={src}\Czech.TEST
Output={app}\
Disk=1,9
Task=9
[Record10]
Type=Freearc_Original
Source={src}\Russian.TEST
Output={app}\
Disk=2
Task=10
I see. Installer extracts the archives to {tmp} folder instead of {app}. Will fix this asap.
I see. Installer extracts the archives to {tmp} folder instead of {app}. Will fix this asap.
So is it an extraction error? I without making the changes that is to add Task = 1 etc. etc. made me extract, what do you mean is for the new updated version that is the 7.3.1C?
Well archives will be extracted but to wrong folder.
I tested it now with your archives and it seems to work (only selected files will be extracted).
Here is a workaround for it.
Well archives will be extracted but to wrong folder.
I tested it now with your archives and it seems to work (only selected files will be extracted).
Here is a workaround for it.
I tried bro, to try to clear 4 or 5 languages and lasciane active only 3 or 4 you'll see that the installer crashes, and here I could not tell you what the problem is when I inserted Task=2, etc, etc, etc) and when I want to select only 1 of the tongue me installs them all equally... I don't get it done and I don't understand where I'm wrong unfortunately, thanks always for everything bro and sorry if I'm wasting your time.
I tried bro, to try to clear 4 or 5 languages and lasciane active only 3 or 4 you'll see that the installer crashes, and here I could not tell you what the problem is when I inserted Task=2, etc, etc, etc) and when I want to select only 1 of the tongue me installs them all equally... I don't get it done and I don't understand where I'm wrong unfortunately, thanks always for everything bro and sorry if I'm wasting your time.
Sorry for that, it was a mistake on my part when assembling the code.
I will have to fix this in all scripts supported by DiskSpan GUI (Including DSG Extraction Tool).
FIX: Change in script the variable name from "StrLine" to "TmpStr" in line 4029.
It should look like this after changing it.
Delete(TmpStr, 1, Pos(Separator, TmpStr));
I didn't do tests to check if it is extracting the selected files correctly.
Please report it if it is not working properly.
I tried bro, to try to clear 4 or 5 languages and lasciane active only 3 or 4 you'll see that the installer crashes, and here I could not tell you what the problem is when I inserted Task=2, etc, etc, etc) and when I want to select only 1 of the tongue me installs them all equally... I don't get it done and I don't understand where I'm wrong unfortunately, thanks always for everything bro and sorry if I'm wasting your time.
https://i.imgur.com/vl6seJ9.pnghttps://i.imgur.com/XvtERW1.png
It works here (after apply the fix from Cesar above).
Sorry for that, it was a mistake on my part when assembling the code.
I will have to fix this in all scripts supported by DiskSpan GUI (Including DSG Extraction Tool).
FIX: Change in script the variable name from "StrLine" to "TmpStr" in line 4029.
It should look like this after changing it.
Delete(TmpStr, 1, Pos(Separator, TmpStr));
I didn't do tests to check if it is extracting the selected files correctly.
Please report it if it is not working properly.
Hi Cesar82, There is no need to apologize indeed I always thank you for all the work you do!
However, the change you just proposed worked great and I can confirm that everything is now 100% working.
1 - There is no longer the problem of sudden crush or freeze installer.
2 - Now the installer extracts what I select.
3 - In the "Record.ini" file you released there is the wording:
[Record1]
Type = FreeArc_Original
Source = {src} \ Changelog.arc
Output = {app} \
Disk = 1.2
Size = 32.11 GB
in
Type = Freearc_Original
Source = {src} \ Changelog.arc
Output = {app} \
Disk = 1.2
Size = 32.11 GB
Where "Type = FreeArc_Original" is wrong for it to work I had to change to: "Type = Freearc_Original".
4 - In the "Settings.ini" file that you released there is the wording:
[TasksSettings]
Enable = 0
FlatPageMode = 0
ShowTaskSize = 1
Task1.Name = Language
Task1.ItemType = GROUP
Task1.Size = 0
Task1.Level = 0
Task1.Checked = 1
Task1.Enabled = 1
Task2.Name = cm: EN
Task2.ItemType = RADIO
Task2.Size = 500 mb
Task2.Level = 1
Task2.Checked = 1
Task2.Enabled = 1
The Italian Task is missing and the words "Task2.File = 1" under Task2.ItemType = RADIO / CHECK example:
Task2.Name = cm: EN
Task2.ItemType = RADIO
Task2.File = 1
Task2.Size = 500 mb
Task2.Level = 1
Task2.Checked = 1
Task2.Enabled = 1
For everything else I think it's all right, I hope I have been of help! and thanks again for all the work you do guys, and sorry for the time I stole from you! good summer to you too.
As for the "Task2.File = 1" just delete it.
I forgot to remove this from Settings.ini
As for the "Task2.File = 1" just delete it.
I forgot to remove this from Settings.ini
So is this a superfluous code? that is, can it be eliminated without any problem? perfect Thanks again bro!
3 - In the "Record.ini" file you released there is the wording:
[Record1]
Type=FreeArc_Original
Source = {src}\Changelog.arc
Output = {app}\
Disk = 1.2
Size = 32.11 GB
in
Type = Freearc_Original
Source = {src}\Changelog.arc
Output = {app}\
Disk = 1.2
Size = 32.11 GB
Where "Type = FreeArc_Original" is wrong for it to work I had to change to: "Type = Freearc_Original".
It should work the same way.
Maybe there was some TAB character on the Type= line.
DiskSpan GUI generates records.ini with FreeArc_Original and other users always install games using FreeArc_Original without problems.
It is not case sensitive the type name, see that the script was used LowerCase that leaves everything in lowercase during the comparison.
function ConvertDataType(sType: String): Integer;
begin
case Trim(LowerCase(sType)) of
LowerCase('FreeArc_Original') : Result := ARC_SIMPLE;
LowerCase('7-Zip_Original') : Result := ZIP_SIMPLE;
LowerCase('WinRAR_Original') : Result := RAR_SIMPLE;
LowerCase('FreeArc_Split') : Result := ARC_MERGED;
LowerCase('7-Zip_Split') : Result := ZIP_MERGED;
LowerCase('WinRAR_Split') : Result := RAR_MERGED;
LowerCase('Split') : Result := SPLIT_PART;
LowerCase('Delta') : Result := DELTA_FILE;
end;
end;
For everything else I think it's all right, I hope I have been of help! and thanks again for all the work you do guys, and sorry for the time I stole from you! good summer to you too.
It's a cold winter here now! :confused:
So is this a superfluous code? that is, can it be eliminated without any problem? perfect Thanks again bro!
It was supposed to be used to ignore the lines of group type items, but was discontinued before it became public.
L33THAK0R
28-08-2021, 02:29
Is it possible to get ASIS to have an additional component "level"? For some packs I'm working on, I'm offering optional pre-modded configurations, where the components, in an ideal scenario would look something like:
|- Main Files
|- Selective videos
|-> Lossless
|-> Lossy
|- Modded Content
|->Type X of Mod
|->Offering A
|->Offering B
But I can't seem to figure out which part(s) require tinkering to make this possible.
Is it possible to get ASIS to have an additional component "level"? For some packs I'm working on, I'm offering optional pre-modded configurations, where the components, in an ideal scenario would look something like:
|- Main Files
|- Selective videos
|-> Lossless
|-> Lossy
|- Modded Content
|->Type X of Mod
|->Offering A
|->Offering B
But I can't seem to figure out which part(s) require tinkering to make this possible.
You must use Tasks to do this.
Use the key level to shift items to the right 15 pixels for each value 1 incremented in the key level.
LEVEL 0 = 0 PIXEL
LEVEL 1 = 15 PIXELS
LEVEL 2 = 30 PIXELS
ETC
Is it possible to get ASIS to have an additional component "level"? For some packs I'm working on, I'm offering optional pre-modded configurations, where the components, in an ideal scenario would look something like:
|- Main Files
|- Selective videos
|-> Lossless
|-> Lossy
|- Modded Content
|->Type X of Mod
|->Offering A
|->Offering B
But I can't seem to figure out which part(s) require tinkering to make this possible.
https://i.imgur.com/yJQq6RX.png
[TasksSettings]
Enable=1
FlatPageMode=0
ShowTaskSize=1
Task1.Name=Main Files
Task1.ItemType=CHECKBOX
Task1.Size=500 mb
Task1.Level=0
Task1.Checked=1
Task1.Enabled=0
Task2.Name=Selective videos
Task2.ItemType=GROUP
Task2.Size=0
Task2.Level=0
Task2.Checked=1
Task2.Enabled=1
Task3.Name=Lossless
Task3.ItemType=RADIO
Task3.Size=600 mb
Task3.Level=1
Task3.Checked=1
Task3.Enabled=1
Task4.Name=Lossy
Task4.ItemType=RADIO
Task4.Size=300 mb
Task4.Level=1
Task4.Checked=0
Task4.Enabled=1
Task5.Name=Modded Content
Task5.ItemType=GROUP
Task5.Size=515 mb
Task5.Level=0
Task5.Checked=0
Task5.Enabled=1
Task6.Name=Type X of Mod
Task6.ItemType=GROUP
Task6.Size=0
Task6.Level=1
Task6.Checked=0
Task6.Enabled=1
Task7.Name=Offering A
Task7.ItemType=RADIO
Task7.Size=200 mb
Task7.Level=2
Task7.Checked=0
Task7.Enabled=1
Task8.Name=Offering B
Task8.ItemType=RADIO
Task8.Size=100 mb
Task8.Level=2
Task8.Checked=0
Task8.Enabled=1
You can replace RADIO with CHECKBOX if you give users the choice of installing "Offering A" + "Offering B" together.
Records.ini for the above example
[Record1]
Type=Freearc_Original
Source={src}\Main_Files.bin
Output={app}\
Disk=1
Size=500 MB
Task=1
[Record2]
Type=Freearc_Original
Source={src}\Lossless.bin
Output={app}\
Disk=1
Size=600 MB
Task=3
[Record3]
Type=Freearc_Original
Source={src}\Lossy.bin
Output={app}\
Disk=1
Size=300 MB
Task=4
[Record4]
Type=Freearc_Original
Source={src}\Offering_A.bin
Output={app}\
Disk=1
Size=200 MB
Task=7
[Record5]
Type=Freearc_Original
Source={src}\Offering_B.bin
Output={app}\
Disk=1
Size=100 MB
Task=8
@L33THAK0R, if you use ASIS together with DiskSpan GUI the DiskSpan GUI 2.0+ settings in "Resources\DSG_Settings.ini" for the KaktoR example above (Part related tasks) will look like this.
[Game1Settings]
//... others game configs
Data1.Name=Main_Files-01.bin
Data1.Tasks=1
Data2.Name=Lossless-01.bin
Data2.Tasks=3
Data3.Name=Lossy-01.bin
Data3.Tasks=4
Data4.Name=Offering_A-01.bin
Data4.Tasks=7
Data5.Name=Offering_B-01.bin
Data5.Tasks=8
L33THAK0R
28-08-2021, 09:24
@Cesar82 @KaktoR thank you so much for your time, however I think I've wasted your efforts (hopefully these instructions will be useful to future users), as I'm a stubborn bastard, still using v7.2.0 of the script, as such I'm not able to use "tasks" to accomplish my goal. However after looking through the script a bit, I think I've figured out the section(s) (https://imgur.com/a/Vdj8C0w) that I need to look at. Once again sorry to have bothered you lads, thank you for all the help you've given so far!
I am still having issues relating to the Start Menu part of the script.
https://i.ibb.co/zmB8nMR/image.png
This is just an example. Even when the option to not make one is checked, it still makes them when the installer is finished. Is there any way I can fix this, or at the very least remove the checkbox?
Thanks for reporting.
Here is a fix for this
The problem was that all the icons were linked to desktop shortcut checkbox and the startmenu checkbox had literally no effect.
Thanks for reporting.
Here is a fix for this
The problem was that all the icons were linked to desktop shortcut checkbox and the startmenu checkbox had literally no effect.
Thank you! The fix works fine on the latest version of ASIS. I do have another question though, is there anyway I can insert this fix into an older version of it, like 7.2.0? I use 7.3.1 and 7.2.0, and I flip-flop between versions for testing. 7.3.1's has too much added stuff compared to 7.2.0, so it's hard to see what line I would have to change to add this fix to 7.2.0.
Unfortunatelly not supported anymore, because the system creating icons changed since then.
I uploaded a hotfix (https://fileforums.com/showpost.php?p=493626&postcount=1055) for the "expression error" if you run the installer in compact mode and it finished.
Problem was that the installer tried to create startmenu shortcuts and failed, eventough this shouldn't be the case in compactmode (however the installation is done succesfull and desktop icons were created).
My previous fix for the shortcuts was just tested in normalmode, sorry for that :D
L33THAK0R
20-09-2021, 03:22
UPDATE: Realised I might be able to do a bit of a botched fix using batch scripts, its a bit fucky but thankfully I don't repack collections structured like this often!
Hi all,
Got a small question regarding whether my proposed solution could work at all (I'm terribly new to pascal/delphi). I've got a fair few packs that feature selective, multiple-title offerings to the end-user, each with their own, separate executable to launch from (since some are emulated and require a small script to launch the ROM), as well as their own entry under the shortcut section of the "Settings.ini" file used in ASIS (baked into a executable thats just a batch script wrapped in an exe). My issue is that regardless of the component selection, upon extraction of all selected archives, all desktop shortcuts defined within the "settings.ini" are generated (should the option be selected).
My current thought process is using the "RemoveShortcut" function, in the Post-install section of the script to delete the shortcut, if a given .txt file is missing (which would be packed with a given selective offering), like so:
#if ("{app}\_CommonRedist\APPS\APP_1.txt" == "0") && ("{userdesktop}\APP_1.lnk" == "1")
#for {i = 1; Trim(ReadIni(SourcePath + "\Settings.ini", "Executable" + Str(i), "ShortcutName", "")) != ""} RemoveShortcut
#endif
#if ("{app}\_CommonRedist\APPS\APP_2.txt" == "0") && ("{userdesktop}\APP_2.lnk" == "1")
#for {i = 2; Trim(ReadIni(SourcePath + "\Settings.ini", "Executable" + Str(i), "ShortcutName", "")) != ""} RemoveShortcut
#endif
However upon testing this both shortcuts were removed even when installing only one of the selected components. Does anyone have any idea why this might be?
MartinezPL
22-09-2021, 08:53
Hi,
Any idea why shortcut is a white blank icon?
I have this in Settings.ini
[Executable1]
ShortcutName=Kena Bridge of Spirits
ExePath=Kena.exe
ExeParam=
IconFileName=Kena.exe
I even had:
IconFileName=Setup.ico
Since Setup.ico use icon straight from game .exe file.
Still it was white blank image.
Hi,
Any idea why shortcut is a white blank icon?
I have this in Settings.ini
[Executable1]
ShortcutName=Kena Bridge of Spirits
ExePath=Kena.exe
ExeParam=
IconFileName=Kena.exe
I even had:
IconFileName=Setup.ico
Since Setup.ico use icon straight from game .exe file.
Still it was white blank image.
Remove IconFileName= key or try:
IconFileName={app}\Kena.exe
MartinezPL
23-09-2021, 03:36
"IconFileName={app}\Kena.exe"
This made the trick.
Thank you very much Cesar82
L33THAK0R
11-10-2021, 01:01
Is it there any easy solution to have multiple data files for single selected component? I'm currently making a collection, with one of the selective titles having to have certain files packed separately. I know I could just instruct the user to select 2 items, but for the sake of it looking better I was wondering if a neater solution would be possible.
I tried modifying
if Trim(GetIniString('ComponentsSettings', 'Component' + IntToStr(I) + '.File', '', IniFile)) = '' then
&
ComponentFile := ExpandConstant('{src}\' + GetIniString('ComponentsSettings', 'Component' + IntToStr(CompIndexList[I]) + '.File', '', ExpandConstant('{tmp}\Settings.ini')));
to
if Trim(GetIniString('ComponentsSettings', 'Component' + IntToStr(I) + '.FileA' or '.FileB', '', IniFile)) = '' then
&
ComponentFile := ExpandConstant('{src}\' + GetIniString('ComponentsSettings', 'Component' + IntToStr(CompIndexList[I]) + '.FileA', '', ExpandConstant('{tmp}\Settings.ini')));
ComponentFile := ExpandConstant('{src}\' + GetIniString('ComponentsSettings', 'Component' + IntToStr(CompIndexList[I]) + '.FileB', '', ExpandConstant('{tmp}\Settings.ini')));
when they appeared (twice for each) within the script, however this sadly didn't work out, with other attempts either not functioning when testing with a set of example archives, or an error was met on compiling the script. Does anyone familiar with Pascal have any idea if this type of modification is possible? I'm assuming such a solution isn't feasible, as the script wasn't designed to have multiple entries for a single component part.
Yes, however, you have to enable Tasks
Just make a Task
Task1.Name=Game Files
Task1.ItemType=CHECKBOX
Task1.Size=<Game size> gb/mb/kb/b
Task1.Level=0
Task1.Checked=1
Task1.Enabled=0
And records.ini
[Record1]
Type=Freearc_Original
Source={src}\Data1a.bin
Output={app}\
Disk=1
Size=<archive size> gb/mb/kb/b
Task=1
[Record2]
Type=Freearc_Original
Source={src}\Data1b.bin
Output={app}\
Disk=1
Size=<archive size> gb/mb/kb/b
Task=1
...
Maybe it works without Task too, but I have not tested it.
But may I ask, why you don't make a masked data archive? You can store different files with different compressions inside a single freearc archive.
Edit: Ohh, I just forgot you are working with an older script (right?). In this case I can't help you much, but I guess it is possible neverthless (I guess in this case you have to work with Component=# instead of Task=# in records.ini).
L33THAK0R
11-10-2021, 03:24
But may I ask, why you don't make a masked data archive? You can store different files with different compressions inside a single freearc archive.
It's quite odd but regardless of a mask, certain files within this title fail to decompress unless packed separately. Even stranger still compressing these files separately gives a lower combined total, than with these files all-in-one archive.
Edit: Ohh, I just forgot you are working with an older script (right?). In this case I can't help you much, but I guess it is possible nevertheless (I guess in this case you have to work with Component=# instead of Task=# in records.ini).
I'll give merging this feature to v7.2.0 a shot, since it already works in 7.3.X, I'm hopeful I'll be successful!
its_gnar_again
03-12-2021, 18:30
Odd question considering it's been a few months without a new post on this thread, but what does it mean when the installer outputs a unarc -6 error (unable to read data)? Someone was talking to me about it and I have no clue - I never received this error and decompression worked fine on my machines.
alucard1973
30-03-2022, 12:47
Please, DelSaveGame in script
[UninstallDelete]
Type: filesandordirs; Name: "<pathconstant>\<folder name>"
alucard1973
30-03-2022, 14:58
[UninstallDelete]
Type: filesandordirs; Name: "<pathconstant>\<folder name>"
Thank you, but what I meant was a script if possible that asks when you uninstall a game if you want to delete the game save which is for example in <userdocs>\SquareEnix\Final Fantasy VII
Try this
Add to Settings.ini
[Settings]
...
...
Savegamefolder={userdocs}\Final Fantasy VII
Edit: Fixed missing file
alucard1973
31-03-2022, 13:49
Thanks very much
can I put several like Savegamefolder1, Savegamefolder2?
fabrieunko
04-04-2022, 13:52
hello, is it possible to add a small equalizer just above the music OFF/ON button
Sorry if this has been asked before, but how do I add a window or border to the welcome screen message? Thanks.
https://i.postimg.cc/ZqKqS0s5/image.jpg (https://postimages.org/)
You have to make it manualy in your bitmap image. There is a _Background.psd file which contains this half transparent border for example reasons (75% opacity).
https://i.imgur.com/rHJZUF4.png
Maybe one day I will add PNG images for it :D But actually this project is finished from my side if there are no bugs around.
Hello everyone,
i want to know how to include in ASIS 7.3.2 Diskspan GUI vxx
as in the version of Asis 7.2.2a
Thank you in advance for your replies
What do you mean exactly? ASIS 7.3.3 is fully compatible with latest Diskspan GUI.
What do you mean exactly? ASIS 7.3.3 is fully compatible with latest Diskspan GUI.
Hello KaktoR,
Hmmm I only see links for 7.3.2
Where is the link to the latest version of asis 7.3.3?
and tell me in 7.3.3, Diskspan GUI is in the 7.3.3 archive?
look at me image of version 7.2.2a
Sorry I totally forgot to share 7.3.3
Here it is. (https://fileforums.com/showpost.php?p=493626&postcount=1055)
What you need is just DSG 2.0.0.9+ (https://fileforums.com/showthread.php?t=104507) (latest ASIS should work with other versions down to 2.0.0.5 too).
Sorry I totally forgot to share 7.3.3
Here it is. (https://fileforums.com/showpost.php?p=493626&postcount=1055)
What you need is just DSG 2.0.0.9+ (https://fileforums.com/showthread.php?t=104507) (latest ASIS should work with other versions down to 2.0.0.5 too).
Ok KaktoR,
thank you very much but tell me for DSG 2.0.0.9+ I unzip the archive in the "COMPRESSOR" directory of asis?
in fact what I want is that "DSG 2.0.0.9+" be integrated into the Asis 7.3.3 script as in your version (7.2.2a) it's much more practical
Yes Setup.exe will be created in COMPRESSOR\Setup_Files folder if it exists.
Yes Setup.exe will be created in COMPRESSOR\Setup_Files folder if it exists.
Big thank KaktoR
Spotless
13-05-2022, 11:17
Hey Guys i want to add my own archives without using DiskSpan
i have used records and made setup.dll but the installer give me this:
https://i.ibb.co/SNDywYL/image.png
Send me your setup.dll + records.ini
Spotless
14-05-2022, 02:05
Send me your setup.dll + records.ini
Password for setup.dll: egymello12
Seems like you did not have set your password in Script.iss
https://i.imgur.com/jnf8wmj.png
Spotless
14-05-2022, 02:19
Seems like you did not have set your password in Script.iss
https://i.imgur.com/jnf8wmj.png
already there
Spotless
14-05-2022, 02:25
also check my script.iss i have edited it
Spotless
14-05-2022, 22:40
Guys how do i change the font of the installer?
also check my script.iss i have edited it
Your error could happen because you edited the script. I will give no support for edited script unless you know what to do.
Guys how do i change the font of the installer?
Go to Help folder and read Settings.txt. There is all explained you need to know.
Spotless
15-05-2022, 08:20
Your error could happen because you edited the script. I will give no support for edited script unless you know what to do.
Go to Help folder and read Settings.txt. There is all explained you need to know.
ok thanks
it was errors from the archive
about the script im editing it but i keep your credits
Spotless
15-05-2022, 09:34
another question how do i change the whole installer font?
mausschieber
15-05-2022, 10:59
another question how do i change the whole installer font?
As KaktoR says before Go to Help folder and read Settings.txt. There is all explained you need to know.
It is only possible to change the welcome and finish messages.
By editing the script it is possible to change the whole appereance of the installer too, like this
https://i.imgur.com/ZrKoBha.png
However sometimes it is needed to change the font size for all elements. Like in the image above, you will see some cut texts.
It is only possible to change the welcome and finish messages.
By editing the script it is possible to change the whole appereance of the installer too, like this
https://i.imgur.com/ZrKoBha.png
However sometimes it is needed to change the font size for all elements. Like in the image above, you will see some cut texts.
Suggestion.
Instead of using Fonte.Size := 14 you can try using Fonte.Height := Scale(10) for example (it will keep the Height aspect of the font automatically calculating the font.size).
Spotless
16-05-2022, 11:16
Thank you guys for Help
i want to combine records.ini to setup
and i want to add component archive name
and Redists does not work
L33THAK0R
20-05-2022, 00:18
What'd be the best solution for being able to use a custom directory constant for a component file? I'm interested in looking into using something like the "{sd}" constant for a given component entry.
I know such functionality is supported for specifying the path of an ".ini" file under [INISettings], but I'm not too sure how to implement it.
I believe this is the section of the script I should be looking at, with the highlighted text being the value that I THINK indicates the working directory for where the file should be.
ComponentFile := ExpandConstant('{src}\' + GetIniString('ComponentsSettings', 'Component' + IntToStr(CompIndexList[I]) + '.File', '', ExpandConstant('{tmp}\Settings.ini')));
if (ISDoneError = False) and FileExists(ComponentFile) then
if not ISArcExtract(0, 0, ComponentFile, ExpandConstant('{app}'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}'), false) then
ISDoneError := True;
I thought about using "{#.File}" or "{#File}", (as seen when used for "{#INIFile}") but this doesn't seem to be a valid solution, would anyone be able to suggest a method that I can look into?
What'd be the best solution for being able to use a custom directory constant for a component file? I'm interested in looking into using something like the "{sd}" constant for a given component entry.
I know such functionality is supported for specifying the path of an ".ini" file under [INISettings], but I'm not too sure how to implement it.
I believe this is the section of the script I should be looking at, with the highlighted text being the value that I THINK indicates the working directory for where the file should be.
ComponentFile := ExpandConstant('{src}\' + GetIniString('ComponentsSettings', 'Component' + IntToStr(CompIndexList[I]) + '.File', '', ExpandConstant('{tmp}\Settings.ini')));
if (ISDoneError = False) and FileExists(ComponentFile) then
if not ISArcExtract(0, 0, ComponentFile, ExpandConstant('{app}'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}'), false) then
ISDoneError := True;
I thought about using "{#.File}" or "{#File}", (as seen when used for "{#INIFile}") but this doesn't seem to be a valid solution, would anyone be able to suggest a method that I can look into?
This is an old version of ASIS and I don't even remember anymore, but I think you can use any constant supported by Inno Setup, but all components will be redirected to new constant.
P.S: The current version you configure directly in the Records.ini file for each component.
L33THAK0R
20-05-2022, 04:36
I am able to change all components to use a given constant, was hoping though to be able to use a different constant for each component, thanks for the help nonetheless.
All the new functionality in newer versions of the script really have me seriously considering making the move from v7.2.0, honestly though the only thing stopping me is the super convenient "Compressor GUI", its a shame it was phased out after v7.2.0 .
Compressor GUI was eliminated to make way for DiskSpan GUI which has much more features and ease of compression doing everything automatically.
Why don't you use DiskSpan GUI?
fabrieunko
20-05-2022, 08:47
hello I would like to add the equalizer if someone can give me a track? thank you in advance
L33THAK0R
20-05-2022, 09:08
Compressor GUI was eliminated to make way for DiskSpan GUI which has much more features and ease of compression doing everything automatically.
Why don't you use DiskSpan GUI?
Compressor GUI looks great, and honestly its a god send for many, but I just use my own little script to process archives using multiple compressors, since I'm often running at least 10-20 fairly large compression tests at any given moment, and having a simple terminal window is just less resource intensive and more easily readable for me personally.
Sorry if I offended you, DiskSpan GUI is a great tool, just not my personal cup of tea.
You don't have to use DiskSpan GUI for ASIS. You can still create your own archive which whatever tool you like. The only thing is you have to create a Setup.dll manualy. All of this is explained in Help folder\Setup.dll.txt
L33THAK0R
20-05-2022, 09:57
You don't have to use DiskSpan GUI for ASIS. You can still create your own archive which whatever tool you like. The only thing is you have to create a Setup.dll manualy. All of this is explained in Help folder\Setup.dll.txt
Ah sick yeah checking out v7.3.3 right now, things seem a lot more streamlined than the last time I checked out a newer revision, think I'll migrate over, the eye-boggling amount of new features/QoL improvements is too good to pass up on, plus being able to aggressively compress all the required compressors into a separate archive is super convenient, very confident this'll save at least a couple GB in space once I've rebuilt all my setup executables that were built using v7.2.0 .
Ah sick yeah checking out v7.3.3 right now, things seem a lot more streamlined than the last time I checked out a newer revision, think I'll migrate over, the eye-boggling amount of new features/QoL improvements is too good to pass up on, plus being able to aggressively compress all the required compressors into a separate archive is super convenient, very confident this'll save at least a couple GB in space once I've rebuilt all my setup executables that were built using v7.2.0 .
I've been looking at my old source codes here and apparently the current ASIS (v7.3.3) works with the COMPRESSOR_ GUI included in ASIS v7.2.2 (also including the compressor files).
I attached the files referring to the old compressors that worked with the COMPRESSOR_GUI (They must be very outdated).
With this GUI compressor you create the Setup.dll file that can be used with current ASIS (I think).
It must be extracted to the ASIS folder.
P.S: Add the 64BitOnly=0 key in the [Settings] section of the ASIS Settings.ini file so that you can use 32-bit compressors.
To work on 32-bit systems, it is also necessary to remove the lines indicated below from the [Setup] section of the Script.iss of the ASIS v7.3.3 :
ArchitecturesInstallIn64BitMode=x64
ArchitecturesAllowed=x64
EDIT: From what you can see it should also work with DislSpan GUI 1.0.0.5, just copy the COMPRESSOR.ini file from the "DiskSpan_GUI\Resources" folder to the COMPRESSOR\Resources folder of DiskSpan GUI 1.0.0.5 and then delete the DiskSpan GUI folder and rename the "COMPRESSOR" folder (DiskSpan GUI 1.0.0.5) to "DiskSpan_GUI" and move the folder into the ASIS folder.
EDIT: I attached a new file.
Extract the COMPRESSOR (DSG) folder to the ASIS 7.3.3 folder.
- Added a combobox in the COMPRESSOR_GUI interface to select the method used to compress Setup DLL.
L33THAK0R
21-05-2022, 04:17
I've been looking at my old source codes here and apparently the current ASIS (v7.3.3) works with the COMPRESSOR_ GUI included in ASIS v7.2.2 (also including the compressor files).
I attached the files referring to the old compressors that worked with the COMPRESSOR_GUI (They must be very outdated).
With this GUI compressor you create the Setup.dll file that can be used with current ASIS (I think).
It must be extracted to the ASIS folder.
P.S: Add the 64BitOnly=0 key in the [Settings] section of the ASIS Settings.ini file so that you can use 32-bit compressors.
To work on 32-bit systems, it is also necessary to remove the lines indicated below from the [Setup] section of the Script.iss of the ASIS v7.3.3 :
ArchitecturesInstallIn64BitMode=x64
ArchitecturesAllowed=x64
EDIT: From what you can see it should also work with DislSpan GUI 1.0.0.5, just copy the COMPRESSOR.ini file from the "DiskSpan_GUI\Resources" folder to the COMPRESSOR\Resources folder of DiskSpan GUI 1.0.0.5 and then delete the DiskSpan GUI folder and rename the "COMPRESSOR" folder (DiskSpan GUI 1.0.0.5) to "DiskSpan_GUI" and move the folder into the ASIS folder.
Oh wow this is better than any gift I could possibly receive, thank you so much mate for going to the effort of doing this, this is honestly a lovely surprise to see after a rather long 14hr shift!
Thank you also for the config batch file, I think you had given me some advice on how to do the same a while back but I never managed to get it working.
Thanks again mate, with this I'll definitely be fully migrating to v7.3.3 :)
L33THAK0R
22-05-2022, 06:37
Quick question about specifying a file for a given Task/Component, what value determines what file to use in v7.3.3? Had a look through the help documentation as well as the script but can't find any reference of whether something like "Component1.File=" / "Task1.File=" is still used, as in v7.2.0, or whether its put inside the Settings.ini / Records.ini file.
Component1.Name=Game 1
...
...
[Record1]
...
Component=1
The same with Tasks
[Record1]
...
Task=#
I've changed english.isl and default.isl after I saved and compile setup. Still no change..
please help me, and sorry for my english because i use google translate
mausschieber
26-05-2022, 13:44
I've changed english.isl and default.isl after I saved and compile setup. Still no change..
please help me, and sorry for my english because i use google translate
Settings.ini
[Settings]
ShowLanguageBox=1
that should Help you
Settings.ini
[Settings]
ShowLanguageBox=1
that should Help you
thank you very much for the help, but I mean changing the text in the language.. I have changed the text in english.isl and default.isl but there is no change in the setup.
For example I have changed WelcomeLabel1 with my own typed text
https://imgur.com/a/vDuEA3d
thank you very much for the help, but I mean changing the text in the language.. I have changed the text in english.isl and default.isl but there is no change in the setup.
For example I have changed WelcomeLabel1 with my own typed text
https://imgur.com/a/vDuEA3d
You must edit the language file in the folder: "Resources\IS_Files\Languages"
or edit "Resources\IS_Files\Default.iss" to english language.
You also need to edit the messages contained in the script.iss, in the sections [Messages] and [CustomMessages] for some labels.
After editing you need to compile using the Compile_Script.bat file.
You must edit the language file in the folder: "Resources\IS_Files\Languages"
or edit "Resources\IS_Files\Default.iss" to english language.
You also need to edit the messages contained in the script.iss, in the sections [Messages] and [CustomMessages] for some labels.
After editing you need to compile using the Compile_Script.bat file.
thanks a lot for the help.. My mistake because compiling using script.iss after using Compile_Script.bat it worked
You must edit the language file in the folder: "Resources\IS_Files\Languages"
or edit "Resources\IS_Files\Default.iss" to english language.
You also need to edit the messages contained in the script.iss, in the sections [Messages] and [CustomMessages] for some labels.
After editing you need to compile using the Compile_Script.bat file.
Sorry but I want to ask you again.
I added code [Run] to the script and compile it using Compile_Script.bat an error occurred while I used inno setup no error occurred (my Inno setup version 6.2.1)
Even though with my innosetup there is no error but the text I have changed doesn't work..
I checked Compile_Script.bat and it looks like it's using inno setup which is in Resources\IS_Files\Compil32Ex.exe
Can you provide a solution for me so that the welcome text can be changed and I can add [Run] code without error
[Run] section will not work.
The welcome text use "msgWelcomeLabel1" and "msgWelcomeLabel2" which you can't edit inside a isl file because they are "hard coded" somewhat (at least I did not found the strings anywhere), but I think maybe you can change the caption of it with "msgWelcomeLabel1.Caption := abc"
Edit: I talk bullshit. I forgot that "msg" before the label name means something which I forgot in the meantime...
The label name which you are looking for is "WelcomeLabel1" and "WelcomeLabel2" in the *.isl files.
Sorry but I want to ask you again.
I added code [Run] to the script and compile it using Compile_Script.bat an error occurred while I used inno setup no error occurred (my Inno setup version 6.2.1)
Even though with my innosetup there is no error but the text I have changed doesn't work..
I checked Compile_Script.bat and it looks like it's using inno setup which is in Resources\IS_Files\Compil32Ex.exe
Can you provide a solution for me so that the welcome text can be changed and I can add [Run] code without error
Edit script.iss in section [Messages].
[Messages]
//Example to change all languages:
WelcomeLabel1=Welcome to [name]
WelcomeLabel2=Install [name/ver] in your system.%n%nClose others app before continue.
//Example to change one language (in example is english):
english.WelcomeLabel1=Welcome to [name]
english.WelcomeLabel2=Install [name/ver] in your system.%n%nClose others app before continue.
https://i.imgur.com/2exAuvJ.png
thanks to both of you
Is there any difference between the inno setup in Resources\IS_Files\Compil32Ex.exe and the one I installed (version 6.2.1)?
I'm confused which one to use
Will compiling using script.iss and using inno setup version 6.2.1 run smoothly?
thanks to both of you
Is there any difference between the inno setup in Resources\IS_Files\Compil32Ex.exe and the one I installed (version 6.2.1)?
I'm confused which one to use
Will compiling using script.iss and using inno setup version 6.2.1 run smoothly?
Yes.. script requirid inno setup 6.05 or newer.
do you know how to open the application/website after the installation is complete and the user has clicked Finish without the checkbox
Insert something like this in CurStepChanged.
do you know how to open the application/website after the installation is complete and the user has clicked Finish without the checkbox
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: Integer;
begin
if CurStep = ssDone then
begin
ShellExec('open', 'https://www.fileforums.com', '', '', SW_SHOWNORMAL, ewNoWait, ResultCode);
ShellExec('open', ExpandConstant('{app}\game.exe'), '', '', SW_SHOWNORMAL, ewNoWait, ResultCode);
end;
end;
Insert something like this in CurStepChanged.
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: Integer;
begin
if CurStep = ssDone then
begin
ShellExec('open', 'https://www.fileforums.com', '', '', SW_SHOWNORMAL, ewNoWait, ResultCode);
ShellExec('open', ExpandConstant('{app}\game.exe'), '', '', SW_SHOWNORMAL, ewNoWait, ResultCode);
end;
end;
Hi Cesar82, thanks for helping me yesterday...
I want to ask again what compression method is the best
So far I'm using [1] Srep + Lzma I'm compressing a 200 mb file to 60 mb but last night I compressed WWE 2K22 with 10 Hours only cut very little from 49.8 GB to 49.3 GB
I read on the internet every game has a different compression method.. Do you know what the difference is?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~
Edit: if you want to know the compression method please open the link https://fileforums.com/showthread.php?t=99554 Thanks @KaktoR for telling
fabrieunko
31-05-2022, 10:19
hello, I just realized there is an error in the image below in the red frame, it should indicate a number instead of mb?
but I can't find where it is. can you help me? I am using version 7.3.3
https://zupimages.net/up/22/22/tvwm.jpg
hello, I just realized there is an error in the image below in the red frame, it should indicate a number instead of mb?
but I can't find where it is. can you help me? I am using version 7.3.3
https://zupimages.net/up/22/22/tvwm.jpg
Check if you have correctly configured the keys referring to the size of each component in the [ComponentsSettings] section of the Settings.ini file as:
Component1.Size=4.15 GB
In the ASIS theme configuration it is displaying correctly, so there must be some configuration missing.
fabrieunko
31-05-2022, 13:19
;; requires at least two components to enable page.
;; if components is used the global size will be ignored.
Component1.Name=Sniper Ghost Warrior 1
Component1.ItemType=CHECK
Component1.Size=7.17 GB
Component1.Level=0
Component1.Checked=1
Component1.Enabled=1
Component2.Name=Sniper Ghost Warrior 2
Component2.ItemType=CHECK
Component2.Size=8.66 GB
Component2.Level=0
Component2.Checked=1
Component2.Enabled=1
Component3.Name=Sniper Ghost Warrior 3 Season Pass Edition
Component3.ItemType=CHECK
Component3.Size=53.5 GB
Component3.Level=0
Component3.Checked=1
Component3.Enabled=1
I think so it's good I don't see any error.
I really think ASIS needs a little fix in the source code.
The label "MB" in Inno Setup languages is not constant in all languages.
Edit ASIS "Script.iss" and add the lines highlighted in RED (Place the lines in the same order as below).
function FormatDiskSpaceLabel(Labl: String; Size: Extended): String;
begin
Result := Labl;
StringChangeEx(Result, '[mb] MBs', '[size]', True);
StringChangeEx(Result, '[mb] Мб', '[size]', True);
StringChangeEx(Result, '[mb] Mo', '[size]', True);
StringChangeEx(Result, '[mb] MB', '[size]', True);
StringChangeEx(Result, '[size]', FormatBytes(Size, 2, False), True);
end;
fabrieunko
31-05-2022, 20:48
many thanks this worked
hi, firstly thank you so much for this great script. i have little question for batch setting
how to show info in caption label when batch run after install, show the text in label caption, ex : " wait finishing proses" on compact mode
thanks
procedure CurStepChanged(CurStep: TSetupStep);
...
if (CurStep = ssPostInstall) then
begin
if not IsDoneError then
begin
#if UseBatch
if FileExists(ExpandConstant('{#BatchFileName}')) then
WizardForm.FilenameLabel.Caption := 'Waiting for batch...';
Exec2(ExpandConstant('{#BatchFileName}'), '', True);
#endif
https://i.imgur.com/eeDNbRv.png
@KaktoR, I think you forgot the begin end.
procedure CurStepChanged(CurStep: TSetupStep);
...
if (CurStep = ssPostInstall) then
begin
if not IsDoneError then
begin
#if UseBatch
if FileExists(ExpandConstant('{#BatchFileName}')) then
begin
WizardForm.FilenameLabel.Caption := 'Waiting for batch...';
Exec2(ExpandConstant('{#BatchFileName}'), '', True);
end;
#endif
worked thanks @kaktor & @Cesar82
and 1 question again
when the batch running, i want the prosses hidden/silent ( only see on task manager and text 'Waiting for batch prosses...' ) without window cmd,
have setting ?
worked thanks @kaktor & @Cesar82
and 1 question again
when the batch running, i want the prosses hidden/silent ( only see on task manager and text 'Waiting for batch prosses...' ) without window cmd,
have setting ?
try
Exec2(ExpandConstant('{#BatchFileName}'), '', False);
try
Exec2(ExpandConstant('{#BatchFileName}'), '', False);
big thanks , :D
@KaktoR, I think you forgot the begin end.
procedure CurStepChanged(CurStep: TSetupStep);
...
if (CurStep = ssPostInstall) then
begin
if not IsDoneError then
begin
#if UseBatch
if FileExists(ExpandConstant('{#BatchFileName}')) then
begin
WizardForm.FilenameLabel.Caption := 'Waiting for batch...';
Exec2(ExpandConstant('{#BatchFileName}'), '', True);
end;
#endif
Thanks, already fixed it here (I made already extensive changes in the script).
Me be like
https://i.imgur.com/GRych1M.jpg
can the pause button be removed?
can the pause button be removed?
Yes
Here is a wip for 7.3.4
v7.3.4 wip
__________________________________________________ ___
- You can now change the font on all installer elements (without memos)
> Only available in normal mode (for now)
- Added UpdateMode
> If enabled setup will not create uninstall files, icons or {app} folder
> File check in Settings.ini is required to proceed to installation
> Only available in compact mode
- Fixed MB label for some languages (thanks to Cesar)
- Added button sounds (not all buttons are covered yet, will be optional in a later update)
- Some other things
If you find any bugs let me know
Here is a wip for 7.3.4
v7.3.4 wip
__________________________________________________ ___
- You can now change the font on all installer elements (without memos)
> Only available in normal mode (for now)
- Added UpdateMode
> If enabled setup will not create uninstall files, icons or {app} folder
> File check in Settings.ini is required to proceed to installation
> Only available in compact mode
- Fixed MB label for some languages (thanks to Cesar)
- Added button sounds (not all buttons are covered yet, will be optional in a later update)
- Some other things
If you find any bugs let me know
thank you very much, i love the sound of the button
I want to ask again, can you tell me how to make the game always run with run as administrator?
because some games have to run as administrator so I want to add Flags: runascurrentuser
Can someone tell me where to put the code?
@abror
Will be added in next update
Do you mean the cutted text on select directory page? Will be fixed in next version.
Edit: Added new script to previous post. Fixed some other things aswell.
PS: As for the "Run as administrator" privileges, open registry.iss and see how it should look like. I will change this in next versions.
I meant the EXIT window.
https://www.upload.ee/image/14268581/2022-06-25_234600.jpg
Selecting "NO" exits the installer.
@abror
Will be added in next update
thanks ^_^
This looks nice, but when i try and run it.. the splash screen shows up and i hear the music and the icon on the taskbar shows up but it doesnt take you to the installer itself.. any ideas how to fix this??
ScOOt3r
Here is Update 2 for v7.3.4 wip
- Temporary removed the ability to change font to all elements except welcome screen due to misplacing elements such as Task/Components lists in certain circumstances
- Fixed a bug which exits the installer if searching for a archive and if installer asks if to quit, you select "No" the installer quits (this (https://fileforums.com/showpost.php?p=497349&postcount=1162))
> The problem was a false ISDoneError boolean in function BrowseArcFile
- The MediaPlayer library is no longer required to play button sounds (thanks to Cesar for the hint)
- Some other things
Sorry I forgot to include the settings.iss file.
Reapply the last update. This should fix it.
Seems like I have forgot to change it... :D
Thanks for this ;)
However, new version will be shared in a few days. Made many tests and it's working good so far.
fabrieunko
20-07-2022, 23:28
my question may be zero but I would like to add a 2nd SPLASH.
how to do?
Added v7.3.4 stable (https://fileforums.com/showthread.php?p=493626#post493626)
L33THAK0R
02-08-2022, 17:57
Added v7.3.4 stable (https://fileforums.com/showthread.php?p=493626#post493626)
The update feature sure seems handy! Is there any chance you could clue me into the label names for the compact mode start screen buttons? I'm a sucker for efficiency and do miss the old cramped nature of the previous compact mode designs. Been reading through but cant seem to quite figure out which ones to modify (it doesn't help my brains a tad smooth haha)
What do you mean exactly?
In script you just have to search for "CompactMode" (without ! char. ! char means "not" in ispp). Then you have all parts which belongs to compact mode.
L33THAK0R
03-08-2022, 18:54
What do you mean exactly?
In script you just have to search for "CompactMode" (without ! char. ! char means "not" in ispp). Then you have all parts which belongs to compact mode.
I was talking about the composition on the install/home page, as seen here (https://imgur.com/a/RO6czaA)
Also is there a certain option needed to get the "Setup.dll" to extract during install? I unpacked a generated 7.3.4 executable and can confirm "Setup.dll" is included in the executable.
However the installer doesnt seem to extract the contents of "Setup.dll", as attempting to start the installation skips the target archives and fails immediately.
If you'd be willing to offer any tips I've included my example Setup.dll, Settings/Records .ini & the Script.iss (for 7.3.4).
Thanks again for your continued support and interest in this script, it's really quite a versatile tool!
Well I have changed the appereance a bit from previous changes because on some languages some text was cut off.
Setup.dll inclusion and password settings have to be done in script.iss (at the beginning) by removing ; in front of the lines. Make sure you set the same password there as you did for the setup.dll file.
Setup.dll will be extracted as first step as soon as you click the install button. You can check that in tmp folder.
L33THAK0R
04-08-2022, 23:02
Ah fair enough, given those reasons can't see any reason for me to further pursue reverting the adjustments.
I was also dead wrong, and you completely right in regards to my issues with using Setup.dll, it turns out the reason nothing was happening was because I forgot to include the "records.ini" in the "Setup.dll" file, I had thought it was also included when placed in the root directory for ASIS, as was the norm with v7.2.0. Seems like I'm getting somewhere now but for some reason attempting to copy over the de-compressors and CLS-related tools from v7.2.0 (ie. CLS-[AFR/BPK/LOLZ/MPZMT/MSC/OGGRE/PZLIB/SREP/UELR), & the CLS-DISKSPAN.dll doesn't seem to work, since I get a fairly basic message after attempting to install the files, reading: "Incompatible version of the "CLS-DiskSpan.dll" library".
Is there a required version of DiskSpan-dll required with the newer versions of ASIS? Apologies for the seemingly never ending stream of queries, seems like I cant catch a break with troubleshooting!
Yes. Grab the diskspan cls from diskspan gui tool ;)
However the diskspan cls is only required if you use it actually. You can also just create freearc archives without diskspan cls. They working fine too. If you don't want to use the spanning method.
L33THAK0R
05-08-2022, 01:09
Yes. Grab the diskspan cls from diskspan gui tool ;)
However the diskspan cls is only required if you use it actually. You can also just create freearc archives without diskspan cls. They working fine too. If you don't want to use the spanning method.
Eureka! That's done it! I had tried 3 different versions of the DiskSpan dll, and hadn't thought to try the latest version, finally got a working setup for v7.3.3 now it seems.
I honestly just use the cls versions for some compressors just because I started off with them and it was convenient, thanks again for all the help, can't wait to see what the future holds for ASIS!
fabrieunko
06-08-2022, 22:32
Hello, I have a problem with the following game:Dying Light 2 Stay Human
compression and installtion is going very well.
but the icon does not launch the game but just opens the directory
[Settings]
Name=Dying Light 2
Size=45.2 GB
Creator=UnK
DefaultInstallDir={sd}\Games
UnInstallFolder=_UnInstall
ShowLanguageBox=0
CompactMode=0
UWPGame=0
Savegamefolder=0
UpdateMode=0
//FileCheck=Game\Launcher\MassEffectLauncher.exe
[Executable1]
ShortcutName=Dying Light 2
ExePath=ph\work\bin\x64\DyingLightGame_x64_rwdi.ex e
ExeParam=
IconFileName={app}\ph\work\bin\x64\DyingLightGame_ x64_rwdi.ico
Component=1
I do not understand why the icon is good (there is the image) but it does not work
When I right click on the icon I get the following properties
"C:\Games\Dying Light 2"
Test without IconFileName key
There is no reason to select the very same file for the icon.
Hello, I have a problem with the following game:Dying Light 2 Stay Human
compression and installtion is going very well.
but the icon does not launch the game but just opens the directory
[Settings]
Name=Dying Light 2
Size=45.2 GB
Creator=UnK
DefaultInstallDir={sd}\Games
UnInstallFolder=_UnInstall
ShowLanguageBox=0
CompactMode=0
UWPGame=0
Savegamefolder=0
UpdateMode=0
FileCheck=Game\Launcher\MassEffectLauncher.exe
[Executable1]
ShortcutName=Dying Light 2
ExePath=ph\work\bin\x64\DyingLightGame_x64_rwdi.ex e
ExeParam=
IconFileName={app}\ph\work\bin\x64\DyingLightGame_ x64_rwdi.exe
Component=1
I do not understand why the icon is good (there is the image) but it does not work
When I right click on the icon I get the following properties
"C:\Games\Dying Light 2"
Your config has information about the Mass Effect game in the FileCheck= key, remove this key or include the correct information for this game.
Maybe you need a different path to workdir.
Try changing in workdir shortcut properties to {app} folder path and see if it works.
I don't remember if ASIS has configuration for this in Settings.ini.
pcblizzard
08-08-2022, 01:55
Hey,
I have a question: in the "Script.iss" file, there is the "[Files]" section, I would like to copy files / folders, depending on what was selected during setup as a component, which I can define in the "Settings.ini" under "[ComponentsSettings]".
But somehow I'm at a loss and don't know what to specify in the "[Files]" section, in the "Script.iss", so that either only the files from the Update 1 or Update 2 folder are copied.
Script.iss:
[Files]
Source: "Path to the Update 1-folder\*"; DestDir: "{app}"; Flags: external ignoreversion recursesubdirs createallsubdirs
Source: "Path to the Update 2-folder\*"; DestDir: "{app}"; Flags: external ignoreversion recursesubdirs createallsubdirs
Settings.ini:
[ComponentsSettings]
Enable=1
FlatPageMode=0
ShowComponentSize=1
;; requires at least two components to enable page.
;; if components is used the global size will be ignored.
Component1.Name=Update 1
Component1.ItemType=RADIO
Component1.Size=2,12 MB
Component1.Level=0
Component1.Checked=1
Component1.Enabled=1
Component2.Name=Update 2
Component2.ItemType=RADIO
Component2.Size=7,34 MB
Component2.Level=0
Component2.Checked=0
Component2.Enabled=1
KR blizz
You have to add such tasks with the use of records.ini
Add files to a freearc archive and add this archive to Settings.ini and records.ini
You can do it with either [TasksSettings] or [ComponentsSettings] in Settings.ini. You have to decide which fits better.
Example with [TasksSettings]
Task1.Name=Updates
Task1.ItemType=GROUP
Task1.Size=0
Task1.Level=0
Task1.Checked=1
Task1.Enabled=1
Task2.Name=Update 1
Task2.ItemType=CHECKBOX
Task2.Size=104.867 b
Task2.Level=1
Task2.Checked=1
Task2.Enabled=1
PS: If you don't want to use a GROUP for sorting items, then delete Task1 and change Task2 to Task1.
---
records.ini
[Record1]
Type=Freearc_Original
Source={src}\Main_Files.bin
Output={app}\
Disk=1
Size=10 GB
[Record2]
Type=Freearc_Original
Source={src}\Update_1.bin
Output={app}\
Disk=1
Size=2.12 MB
Task=2
If you use [ComponentsSettings] then use Components= key in records.ini
I felt the need to further explain the component and task settings, so here is update 7.3.5
v7.3.5
__________________________________________________ ___
- Added additional help for components and tasks settings in Help folder
- UpdateMode and FileCheck keys are now in a new settings section [UpdateSettings]
pcblizzard
08-08-2022, 07:55
Thank you KaktoR for your help, everything worked!
I have added a small fix for the help files to previous post.
Edit: added a new fix. Sorry
fabrieunko
08-08-2022, 11:54
I allow myself to give you the translation in French.
Find
french.SavegameFolder=Do you want to delete savegame folder?
Remplace
french.SavegameFolder=Voulez-vous supprimer le dossier de sauvegarde?
A small correction or a space is missing
Find
french.label2={#if CompactMode}Progression générale:{#else}Total des fichiers: %1 Fichiers traités: %2 Ok: %3manquants: %4 mauvais: %5{#endif}
Remplace
french.label2={#if CompactMode}Progression générale:{#else}Total des fichiers: %1 Fichiers traités: %2 Ok: %3 manquants: %4 mauvais: %5{#endif}
fabrieunko
09-08-2022, 22:16
Hello, I have a problem with the following game:Dying Light 2 Stay Human
compression and installtion is going very well.
but the icon does not launch the game but just opens the directory
[Settings]
Name=Dying Light 2
Size=45.2 GB
Creator=UnK
DefaultInstallDir={sd}\Games
UnInstallFolder=_UnInstall
ShowLanguageBox=0
CompactMode=0
UWPGame=0
Savegamefolder=0
UpdateMode=0
//FileCheck=Game\Launcher\MassEffectLauncher.exe
[Executable1]
ShortcutName=Dying Light 2
ExePath=ph\work\bin\x64\DyingLightGame_x64_rwdi.ex e
ExeParam=
IconFileName={app}\ph\work\bin\x64\DyingLightGame_ x64_rwdi.ico
Component=1
I do not understand why the icon is good (there is the image) but it does not work
When I right click on the icon I get the following properties
"C:\Games\Dying Light 2"
hello again, so I'm coming back to you because I've done many tests and corrected the ini and nothing has worked the shortcut only opens the game directory but does not launch the game. I even changed the name of the game. exe and rename it and it didn't work.
I will therefore abandon this game because I really do not understand why it does not work
Send me the executable via private message
Edit: I tested with the game executable, used the same oiginal folder paths for my test, and it works fine here.
Icon is changed to what it is set in settings.ini.
It does not open the game directory with the desktop icon but run the executable.
So I really don't know what is happening for you. Is this only with this game or other games too?
fabrieunko
10-08-2022, 11:54
hello, it's the only and first game that does this to me, I have the game icon, but it opens the game directory only.I still sent you the exe in case you want to test.
thank you
its_gnar_again
17-08-2022, 20:11
Heyo, I just started moving to v.7.3.4, and I had a question relating to the Tasks page. Is there anyway to not include this section when in non-compact mode? I feel like it's unnecessary when the following page with the install dir/start menu shows the size anyway, and I rather have it skip to that page. It's not often I have anything selective/optional.
https://i.ibb.co/hH1syzN/image.png
Just don't use Taskpage then ;)
its_gnar_again
18-08-2022, 07:51
Just don't use Taskpage then ;)
I was under the assumption that it was needed by default for this version, thanks for the heads up. :eek:
v7.3.8
__________________________________________________ ___
- Fixed INI options if the file was not present in {app} dir the installer has created the file instead
- Removed RunFromAppFolder setting temporarily if you use QuickSFV
v7.3.7
__________________________________________________ ___
- Added QuickSFV option again as alternative crc check option after installation
> Note: You can't use both options
- Fixed redist installation (thanks to Cesar)
- Fixed some other things
v7.3.6
__________________________________________________ ___
- Updated french language (thanks to fabrieunko)
- Updated Portuguese Brazil language (thanks to Cesar)
- Corrected some translations
- Settings.iss removed
How can the Exec function work only by selecting Component 2?
Component2.Name=Patch
Component2.ItemType=CHECK
Component2.Size=1 MB
Component2.Level=0
Component2.Checked=1
Component2.Enabled=1
I tried the below function but it didn't work.:(
if ComponentsList.Checked[2] then
begin
if not ISExec ( 0, 0, 0, ExpandConstant('{tmp}\Patch.exe'), ExpandConstant('/Dir={app}'), ExpandConstant('{tmp}'), '...',false) then break;
end;
please help.
Lord.Freddy
20-08-2022, 20:40
How can the Exec function work only by selecting Component 2?
Component2.Name=Patch
Component2.ItemType=CHECK
Component2.Size=1 MB
Component2.Level=0
Component2.Checked=1
Component2.Enabled=1
I tried the below function but it didn't work.:(
if ComponentsList.Checked[2] then
begin
if not ISExec ( 0, 0, 0, ExpandConstant('{tmp}\Patch.exe'), ExpandConstant('/Dir={app}'), ExpandConstant('{tmp}'), '...',false) then break;
end;
please help.
Try this
if IsComponentSelected('NAME') then begin
[Your Code]
End;
Thanks Lord Freddy
But it doesn't work.
Lord.Freddy
21-08-2022, 04:07
Thanks Lord Freddy
But it doesn't work.
if IsComponentSelected('Patch') then
var
ResultCode: Integer;
begin
// Launch EXE file and wait for it to terminate
Exec(ExpandConstant('{tmp}\Patch.exe'), ExpandConstant('/Dir={app}'), '', SW_SHOW,ewWaitUntilTerminated, ResultCode);
end;
I think this is work for you now:)
Masquerade
23-08-2022, 08:31
Hey, how would we go about doing the following in ASIS?
- Extract first Archive in records.ini
- Run a batch file
- Resume extracting the next archives
Thanks!
If it helps, I'm using v7.1.4
@Masquerade
This needs some changes in "procedure Unpack_Process".
Honestly I don't know if this even exists on v7.1.4, since many changes come along since then.
L33THAK0R
26-08-2022, 23:40
I've been trying to do a minor redesign to the compact mode layout, by moving all the contents of the "AboutForm" to the main-page of the installer. I've managed to accomplish all I set out to do save for getting the "LogoImage" to display, even after changing the parent to "WizardForm", Is there something I'm missing? I'm using the latest version of the script if it helps.
L33THAK0R
01-09-2022, 18:01
Sorry to fire off all these questions but got one more quickie, would anyone happen to know what variables determine the default Font used for CompactMode, and which ones disable the use of custom fonts for CompactMode? I un-commented the parts disabling the use of custom fonts, as present in v7.3.4-Update-2 and onwards and played around with the script a bit. "Font.ttf" is definitely being added to the installer but theres something in the script preventing a custom font being used on CompactMode, since its definitely working for most elements, save the AboutForm & InfoForm, in non-CompactMode.
Custom Font is used only by NormalMode (non-CompactMode) on Start page and Finish page.
Custom fonts were never added to compact mode, simply because of its size and design. In former tests most fonts (especially but not only included by default in windows) were unreadable, means cut off texts and such. I think the standard font used by Inno Setup is "Arial" font.
However if you want to change the fonts of all elements in compact mode, you have to add "Font.Name :=" to all the elements manually which are used by compact mode, like this
Font.Name := 'Times New Roman';
Example for Icons checkbox
IconsCB := TNewCheckBox.Create(WizardForm);
with IconsCB do
begin
#if !CompactMode
...
#else
Font.Name := 'Times New Roman';
...
..
#endif
end;
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
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).
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.
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:
Runtime error (at 368:722):
Could not call proc.
&
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.
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.
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:
Runtime error (at 368:722):
Could not call proc.
&
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
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
You have to call function UnpackDLLFiles directly in function InitializeSetup
Ah alright I'll give that a shot!
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 (UnpFile: String): Boolean; side of things, with trusty Dr. Google not really making clear what a "UnpFile" designation is.
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
#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.
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 (UnpFile: String): Boolean; side of things, with trusty Dr. Google not really making clear what a "UnpFile" designation is.
Example
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 (https://imgur.com/a/Rpn8RH0)) 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:
[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.
[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.
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 :)
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.
[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).
L33THAK0R
11-09-2022, 10:40
Bizarre update for anyone else in the future who encounters my issue, it seems "WizardForm.DirEdit" & "WizardForm.DirBrowseButton" were the culprits of my bizarre element issue and simply hiding them resolves this. I've done some digging but alas I've no idea what the scripts reasoning is for creating this rogue overlapping element.
There are some other elements which glitch around :D
All of these problems with misplaced and glitched elements started when I was trying to resize the original wizardform way back, which was - to my naive surprise - problematic in the past because there seems to be a internal limitation in Inno Setup source for some reason (if you want to make the installer surface bigger then default). Not sure but I think it was the Wizardform.Innerpage which was the real problem, that's why there exists a funny procedure GrowWizard to get rid of this problem.
pcblizzard
11-09-2022, 12:45
Try with this hotfix (I didn't have time to test).The script works! Thank you very much!
Made some changes and added quicksfv alternative crc checking a week ago. Wanted to wait for next DSG but it let us wait and I don't know if anything have to be changed in script yet. So here is a new update.
v7.3.7
__________________________________________________ ___
- Added QuickSFV option again as alternative crc check option after installation
> Note: You can't use both options
- Fixed redist installation (thanks to Cesar)
- Fixed some other things
https://fileforums.com/showpost.php?p=498028&postcount=1191
ROKA1969
15-09-2022, 11:26
In my case, the progress bar doesn't work in version 7.3.5, I didn't have this problem.
https://i.imgur.com/ui91cYG.png
How can anyone check this under the link is my script
fabrieunko
15-09-2022, 19:58
hello is an update planned for DiskSpan support 2.0.1.2?
hello is an update planned for DiskSpan support 2.0.1.2?
One thing at a time... Wait!
Soon the Light Installer Script will be supported.
Then the CIU and then the ASIS and then the other installers.
Just don't use the new features with outdated scripts and errors will not occur even using DiskSpan GUI 2.0.1.2.
hello is an update planned for DiskSpan support 2.0.1.2?
It is compatible. Only the new hash function in DSG does not work with ASIS at the moment.
In my case, the progress bar doesn't work in version 7.3.5, I didn't have this problem.
https://i.imgur.com/ui91cYG.png
How can anyone check this under the link is my script
I will check
ROKA1969
16-09-2022, 11:01
It has already been clarified that the problem was the upgrade to version 7.3.7. Version 7.3.6 + fix redist itself works fine.
https://i.imgur.com/Fu0AsJP.png
fabrieunko
16-09-2022, 12:01
Hello, I just tested version 7.3.7 it works very well. but I have a problem when I test with QuickSFV.
I generated an sfv file but it gives me an error see image. maybe the checksum file is not copied to the right place? if I copy it into the tu game directory and launch QuickSFV manually it works
https://zupimages.net/up/22/37/d1u7.jpg
Hello, I just tested version 7.3.7 it works very well. but I have a problem when I test with QuickSFV.
I generated an sfv file but it gives me an error see image. maybe the checksum file is not copied to the right place? if I copy it into the tu game directory and launch QuickSFV manually it works
https://zupimages.net/up/22/37/d1u7.jpg
The problem seems that you can't set the WorkingDir constant in Exec function correctly for QuickSFV.exe
If you set RunFromAppFolder=1 it works fine. I have removed the RunFromAppFolder option temporarily if you use QuickSFV until I find another solution.
https://i.imgur.com/ySHzJlC.png
Here is v7.3.8
https://fileforums.com/showthread.php?p=498028#post498028
v7.3.8
__________________________________________________ ___
- Fixed INI options if the file was not present in {app} dir the installer has created the file instead
- Removed RunFromAppFolder setting temporarily if you use QuickSFV
L33THAK0R
19-09-2022, 10:11
Is it possible to implement external labels to replace TimeStr1/2/3? I've got the issue currently where the time elapsed/remaining labels are cut off by the WizardForm boundaries, however this issue would be resolved if I were able to shorten "hour(s)"/"minute(s)"/"second(s)" to something simpler such as "hr(s)"/"min(s)"/"sec(s)", however I'm currently unable to figure out how to do so.
Masquerade
19-09-2022, 11:10
Is it possible to implement external labels to replace TimeStr1/2/3? I've got the issue currently where the time elapsed/remaining labels are cut off by the WizardForm boundaries, however this issue would be resolved if I were able to shorten "hour(s)"/"minute(s)"/"second(s)" to something simpler such as "hr(s)"/"min(s)"/"sec(s)", however I'm currently unable to figure out how to do so.
If I am correct in thinking, these strings are read from ISDone's configurations. So, just edit the corresponding ini file for each language in "Resources\Includes" folder. Should fix your problem.
L33THAK0R
19-09-2022, 21:27
If I am correct in thinking, these strings are read from ISDone's configurations. So, just edit the corresponding ini file for each language in "Resources\Includes" folder. Should fix your problem.
Ah cheers, I didn't even think to check the config files, definitely makes things easier!
v7.3.9
__________________________________________________ ___
- The script is now compatible with DiskSpan_GUI v2.0.1.2+ (thanks to César)
> Hash files created with DSG v2.0.1.2+ can be used with ASIS now
> Note that for QuickSFV you have to create hash file manually and place it in Setup folder (like before)
- Removed RunFromAppFolder setting completely
> If you use QuickSFV for hash checking, hash file and QuickSFV.exe will now be executed from {app} folder
> QuickSFV.exe and QuickSFV.ini will be deleted from {app} folder after hash check is finished
fabrieunko
22-09-2022, 19:31
Hello, I have just tested ASIS 7.3.9 with the QuickSFV function and I have a small error when the installation is finished and it asks to test the files. here are the screens:
[CRCCheck]
//----------------------------------------------- Setup\Filename.md5 \ .sha1 \ .sha256 \ .sha512
Enable=1
StartCheck=1
QuickSFV=1
QuickSFVFile=checksums.md5
in my setup I have created a file checksums.md5
but when the installer finished. and want to test the files I have:
https://zupimages.net/up/22/38/bypw.png
another problem when the file test starts, this one says:
Control ... directory name / filename.pak (221 GB out of 526 GB) when it should indicate 2.21 and 5.26
https://zupimages.net/up/22/38/ngg0.png
anyone please tell me how to remove or hide the "Pause" button
L33THAK0R
25-09-2022, 10:17
anyone please tell me how to remove or hide the "Pause" button
At least for compact mode, just change all entries of PauseButton.Show; to PauseButton.Hide; in your "Script.iss"
At least for compact mode, just change all entries of PauseButton.Show; to PauseButton.Hide; in your "Script.iss"
thank you for helping
I want to report a problem with version v7.3.9
If I turn off the crc check an error will occur
32715
v7.4.0
__________________________________________________ ___
- The script is now compatible with DiskSpan_GUI v2.0.1.3+ (thanks to César)
- Fixed some bugs
Hotfix 1:
- Fixed QuickSFV not reading hash file if path/file name contains spaces
- Added option to turn off Windows 11 information
ROKA1969
26-09-2022, 04:00
I would like to have only two languages in the language selection window: Polish and English, I removed all entries for other languages in the script, but they are still displayed in the selection window
https://i.imgur.com/BdJS5oI.png
I also deleted the ASIS folder but they keep showing up. Anyone help?
I will add that using QuickSFV also displays the same error as my friend fabrieunko
https://www.zupimages.net/up/22/38/bypw.png
Comment out languages in "function CreateLangDialog(): Boolean;"
I will add that using QuickSFV also displays the same error as my friend fabrieunko
https://www.zupimages.net/up/22/38/bypw.png
Works here
https://i.imgur.com/dEpPt3O.png
Send me Settings.ini + Script.iss
From the messagebox it looks like the filename is empty.
Masquerade
26-09-2022, 09:00
I would like to have only two languages in the language selection window: Polish and English, I removed all entries for other languages in the script, but they are still displayed in the selection window
https://i.imgur.com/BdJS5oI.png
I also deleted the ASIS folder but they keep showing up. Anyone help?
I will add that using QuickSFV also displays the same error as my friend fabrieunko
https://www.zupimages.net/up/22/38/bypw.png
QuickSFV will display this error if there are spaces in the file path where the MD5 checksum is stored. The string needs wrapping in quotation marks.
is there a way to get rid of the popup at the start of this install?
32723
Masquerade
26-09-2022, 09:05
Seconding this, which methods are supposedly not working on Windows 11? I have been making my repacks under Windows 11 for months now and have not encountered any such problems. If there's anything you would like testing, just ask.
is there a way to get rid of the popup at the start of this install?
32723
Comment out lines 4219 and 4220 of the script with //
//if (FailWinEleven = '') and (MessageBox(WizardForm.Handle, 'Some of the methods used in this compression may not be supported by Windows 11.' + #13#10 + #13#10 + 'Would you like to continue anyway?', SetupMessage(msgSetupAppTitle), MB_ICONQUESTION or MB_YESNO or MB_TASKMODAL) <> IDYES) then
// Exit;
But be aware that this is a warning and that installation errors may occur because one of the methods is not supported by Windows 11.
QuickSFV will display this error if there are spaces in the file path where the MD5 checksum is stored. The string needs wrapping in quotation marks.
Try changing line 5231 of the script as shown below:
ShellExec('open', ExpandConstant('{app}\QuickSFV.exe'), AddQuotes(ExpandConstant('{app}\{#QuickSFVFile}')) , '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
Seconding this, which methods are supposedly not working on Windows 11? I have been making my repacks under Windows 11 for months now and have not encountered any such problems. If there's anything you would like testing, just ask.
From what I've understood so far they are: xt_zlib (xzlib), xt_lzo (xlzo), xtool:manvil:lzo, xtool:mfc3, xtool:mfc4, lzorec
For the xt_zlib method (from the old xtool) the old DLL zlibwapi.dll (102 Kb) was replaced by the DLL used with the new XTool (523 Kb) and the problem was fixed (I hope it has the same compression gain).
For errors in the other methods above the incompatible library is lzo2.dll (103 Kb) which does not work with Windows 11.
You can blacklist the DiskSpan GUI new methods that occur extraction errors in windows 11, for this include in the FailWinEleven= key of the [SETTINGS] section of DSG_Methods.ini.
The methods listed if used will show a warning to the user before compression and also during installation.
For errors of this type to occur, it is necessary to compress it on Windows 10 or lower and install it on Windows 11.
Compressing on windows 11 will not show errors even during installation because the libraries will be ignored and there will be no precompression (Ratio 100%).
Hotfix 1:
- Fixed QuickSFV not reading hash file if path/file name contains spaces
- Added option to turn off Windows 11 information
https://fileforums.com/showthread.php?p=498487#post498487
@Masquerade see my previou post.
ROKA1969
26-09-2022, 10:11
Comment out languages in "function CreateLangDialog(): Boolean;"
Now I have two languages working. Thank you :)
ROKA1969
26-09-2022, 10:41
Hotfix 1:
- Fixed QuickSFV not reading hash file if path/file name contains spaces
- Added option to turn off Windows 11 information
https://fileforums.com/showthread.php?p=498487#post498487
Works fine with fix 1. Thank you !!
https://i.imgur.com/jiXlCtS.png
If it was possible to remove the checksums.md5 file from the game folder after verification, I would be happy :)
If it was possible to remove the checksums.md5 file from the game folder after verification, I would be happy :)
Edit the following code
if HashCheckCB.Checked then
begin
PercentLabel.Hide;
ElapsedLabel.Hide;
RemainingLabel.Hide;
WizardForm.FilenameLabel.Caption := ExpandConstant('{cm:HashPageTitle}');
WizardForm.ProgressGauge.Hide;
FileCopy(ExpandConstant('{tmp}\QuickSFV.exe'), ExpandConstant('{app}\QuickSFV.exe'), False);
FileCopy(ExpandConstant('{tmp}\{#QuickSFVFile}'), ExpandConstant('{app}\{#QuickSFVFile}'), False);
ShellExec('open', ExpandConstant('{app}\QuickSFV.exe'), ExpandConstant('"{app}\{#QuickSFVFile}"'), '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
DeleteFile(ExpandConstant('{app}\QuickSFV.exe'));
DeleteFile(ExpandConstant('{app}\QuickSFV.ini'));
DeleteFile(ExpandConstant('{app}\{#QuickSFVFile}') );
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.