#1546
|
|||
|
|||
Hi all !
How can i get the installed app's path to 'DefaultDirName' ? I have a reg-entry : Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\ Windows\CurrentVersion\Uninstall\MyApp] "InstallLocation"="D:\\MyProgram" Theoretically in InnoSetup's [setup] section DefaultDirName={reg:HKLM64\HKEY_LOCAL_MACHINE\SOFT WARE\Microsoft\Windows\CurrentVersion\Uninstall\My App, InstallLocation} should do the job. But no... Any idea ? Note : (there are "spaces" in the example paths,etc. Its only visible here,dont know why. I my script they doesnt exists. No matter.) |
Sponsored Links |
#1547
|
||||
|
||||
Quote:
Code:
DefaultDirName={reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\My App_is1,InstallLocation|{pf}\My App} UsePreviousAppDir=no Last edited by Cesar82; 18-05-2023 at 07:01. |
The Following User Says Thank You to Cesar82 For This Useful Post: | ||
shazzla (19-05-2023) |
#1548
|
|||
|
|||
Thank you very much!
I will try and report back ASAP ! Its working fine ! Thanks ! Last edited by shazzla; 19-05-2023 at 02:35. |
#1549
|
||||
|
||||
Quote:
|
#1550
|
||||
|
||||
ChatGPT is notoriously bad at writing complicated code. Sure, it can write simple algorithms, I use it sometimes to write quick scripts for making my repacks, but anything beyond this it usually gets the syntax wrong or the program will not work.
|
#1551
|
||||
|
||||
Actually, I told him to use it because he can get an simple idea of how to do this.
|
#1552
|
||||
|
||||
Question's
01.how to show Component Page before the Select Dir Page (without creating custom forms or anything like that) in Inno setup 5.5.1 ee2 version?
02.how to calculate the required disk space based on the components selected and show in gigabyte on Component page in Inno setup 5.5.1 ee2 version? I actually found an answer to this. But it doesn't work. If someone gives an answer to these two, it will be a great help <3 Code:
var Component1Size: Extended; Component2Size: Extended; // Add variables for each component as needed procedure InitializeWizard; begin Component1Size := 1048576; Component2Size := 2097152; // Assign sizes for other components if needed end; function GetTotalSize: String; var TotalSize: Extended; begin TotalSize := 0; if WizardForm.ComponentsList.Checked[0] then TotalSize := TotalSize + Component1Size; if WizardForm.ComponentsList.Checked[1] then TotalSize := TotalSize + Component2Size; // Add similar lines for other components if needed Result := FormatFloat('#,##0.00', TotalSize / 1024 / 1024 / 1024); // Convert bytes to gigabytes end; procedure ComponentsPageOnNextButtonClick(Sender: TWizardPage; var Continue: Boolean); begin if Sender.ID = wpSelectComponents then WizardForm.DiskSpaceLabel.Caption := 'Required disk space: ' + GetTotalSize + ' GB'; end; |
#1553
|
|||
|
|||
Hello everybody,
I'm using IsArcEx for FreeArc archive decompression and I am attempting to apply a hdiffz patch after install, here is how I'm doing so: Code:
procedure patching; var ResultCode: Integer; begin Exec(ExpandConstant('{tmp}\hpatchz.exe'), (ExpandConstant('{app}\...\file.one {app}\...\file.two {app}\...\file.three')), (ExpandConstant('{app}')), SW_SHOW, ewWaitUntilTerminated, ResultCode) DeleteFile (ExpandConstant('{app}\...\file.one')); DeleteFile (ExpandConstant('{app}\...\file.two')); end; Code:
if (ISArcDiskAddingSuccess) and ISArcExInit(MainForm.Handle, {#TimeFormat}, @ProgressCallback) then begin repeat if ISArcExDiskCount = 0 then begin MsgBox('There is no any archive found for unpacking.', mbError, MB_OK); break; end; ChangeLanguage('English'); //ChangeLanguage('Russian'); for i := 1 to ISArcExDiskCount do begin ISArcExError := not ISArcExExtract(i, ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}')); if ISArcExError then break; end; until true; patching(); ISArcExStop; if ISArcExError then MsgBox('Installation is corrupted.', mbError, MB_OK) end; HideControls; WizardForm.CancelButton.Visible := true; WizardForm.CancelButton.Enabled := false; end; What I would like to happen is the timer continuing and after the patch is applied for it to end. Thanks in advance |
#1554
|
||||
|
||||
Quote:
Code:
procedure wCreateFilePatch(Const fOldFile, fNewFile, fDiffFile: WideString; fMatchLength: Cardinal; fPatchCallback: TFDiffCallback); external 'wCreateFilePatch@files:FMXInno.dll stdcall delayload'; procedure wApplyFilePatch(Const fOldFile, fNewFile, fDiffFile: WideString); external 'wApplyFilePatch@files:FMXInno.dll stdcall delayload'; Code:
#ifdef Patch1 if FileExists(ExpandConstant('{#P1[59]}')) and FileExists(ExpandConstant('{#P1[61]}')) then begin wApplyFilePatch(ExpandConstant('{#P1[59]}'), ExpandConstant('{#P1[60]}'), ExpandConstant('{#P1[61]}')); #if P1[62] == "1" DeleteFile(ExpandConstant('{#P1[59]}')); DeleteFile(ExpandConstant('{#P1[61]}')); #endif end; #endif Last edited by audiofeel; 16-07-2023 at 07:10. |
#1555
|
|||
|
|||
audiofeel, How would I achieve this without utilizing FMXInno.dll?
|
#1556
|
|||
|
|||
Quick update.
What I was doing was using absolute paths instead of using relative ones, this lead the patch to attempt to execute but it would lead to an error. The way I fixed it, if anyone encounters this issue in the future was to copy the necessary files to {app} and run with relative paths there. |
#1557
|
||||
|
||||
SelectDisk
Hello everyone, I am trying to implement the function (SelectDisk) that is available in (InnoSetup) 6, so I wrote the code that is in the (zip) file below, but after execution
1: If I click on the (OK) button and if the requested file is not there, it should give me an error, but it ignores this. 2: If I click on the (cancel) button, it should show me the exit message box, but it ignores it. I will be glad if someone can fix the problems of this code
__________________
¤ Life good be a Dream ¤ Last edited by Lord.Freddy; 22-07-2023 at 13:14. |
#1558
|
||||
|
||||
Quote:
I recommend putting OnClick procedures for the "OK" and "Cancel" buttons and putting your functions there, then you can set the values of the global variable "ModalResult". |
The Following 2 Users Say Thank You to Cesar82 For This Useful Post: | ||
audiofeel (23-07-2023), Lord.Freddy (22-07-2023) |
#1559
|
|||
|
|||
Hey, I'm a new member and joined yesterday. I am a complete noob but have learned a lot reading through this forum in just one day. I am currently using ASIS: Advanced Simple Installer Script and want to change the background JPG slideshow to a GIF image. I have found GifLib.dll but do not know how to adjust the script code and wondered if someone with know-how can do this for me or show me what needs changing. I have no coding experience, but I learn pretty quick, I'm a visual learner.
I have put the GifLib.dll in ASIS.v7.4.4\Resources\Modules\InstallBG folder i have found the following lines in the script that I'm assuming need changing: #if UseInstallBackground Source: "Resources\Modules\InstallBG\InnoCallback.dll" ; DestDir: "{tmp}"; Flags: dontcopy Source: "Resources\Modules\InstallBG\IsSlideShow.dll"; DestDir: "{tmp}"; Flags: dontcopy #sub AddFile2 Source: "Setup\Background\{#i}.jpg"; DestDir: "{tmp}"; Flags: dontcopy #endsub #for {i = 1; FileExists("Setup\Background" + Str(i) + ".jpg" ) != 0; i++} AddFile2 #endif Any help appreciated. |
#1560
|
|||
|
|||
function GetVolumeFreeSpace(const RootDir: PAnsichar; const OutSizeType: Byte): Double; external 'GetVolumeFreeSpace@files:Isab.dll stdcall delayload';
Good morning, how to extract the value from the function above? I've tried: value.Caption:=StrToInt(GetVolumeFreeSpace); value.Caption:=FloatToStr(GetVolumeFreeSpace); value.Caption:=StrToFloat(GetVolumeFreeSpace); I have "invalid parameters" issue. How can i fix the problem? Thanks in advance! Last edited by Dragonis40; 17-09-2023 at 04:22. |
Thread Tools | |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
INNO TROUBLESHOOT - Tutorials and Answers about INNO Setup | REV0 | Conversion Tutorials | 129 | 21-05-2021 05:51 |
INNO TUTORIAL - Using Unicode and ANSI Versions of INNO Setup | REV0 | Conversion Tutorials | 51 | 26-03-2015 06:57 |
Frequently Asked Questions | Joe Forster/STA | PC Games - Frequently Asked Questions | 0 | 29-11-2005 09:48 |