Browse Source

Finishing touches.

Martijn Laan 3 months ago
parent
commit
f770e48db8

+ 2 - 0
Projects/Src/Compression.SevenZipDLLDecoder.pas

@@ -679,6 +679,8 @@ procedure ExtractArchiveRedir(const DisableFsRedir: Boolean;
   end;
 
 begin
+  LogArchiveExtractionModeOnce;
+
   if ArchiveFileName = '' then
     InternalError('ExtractArchive: Invalid ArchiveFileName value');
   const clsid = GetHandler(PathExtractExt(ArchiveFilename),

+ 2 - 0
Projects/Src/Compression.SevenZipDecoder.pas

@@ -294,6 +294,8 @@ procedure Extract7ZipArchiveRedir(const DisableFsRedir: Boolean;
   const ArchiveFileName, DestDir, Password: String; const FullPaths: Boolean;
   const OnExtractionProgress: TOnExtractionProgress);
 begin
+  LogArchiveExtractionModeOnce;
+
   if ArchiveFileName = '' then
     InternalError('Extract7ZipArchive: Invalid ArchiveFileName value');
   if DestDir = '' then

+ 0 - 2
Projects/Src/Setup.ScriptDlg.pas

@@ -1190,8 +1190,6 @@ procedure TExtractionWizardPage.Extract;
 begin
   FAbortedByUser := False;
 
-  LogArchiveExtractionModeOnce;
-
   for var A in FArchives do begin
     { Don't need to set DownloadTemporaryFileOrExtractArchiveProcessMessages before extraction since we already process messages ourselves }
     if SetupHeader.SevenZipLibraryName <> '' then

+ 0 - 2
Projects/Src/Setup.ScriptFunc.pas

@@ -1786,8 +1786,6 @@ var
     end);
     RegisterScriptFunc(['Extract7ZipArchive', 'ExtractArchive'], procedure(const Caller: TPSExec; const OrgName: AnsiString; const Stack: TPSStack; const PStart: Cardinal)
     begin
-      LogArchiveExtractionModeOnce;
-
       var Password: String;
       var FullDirsItemNo: Longint;
       if OrgName = 'Extract7ZipArchive' then begin

+ 1 - 1
Projects/Src/Setup.WizardForm.pas

@@ -2,7 +2,7 @@ unit Setup.WizardForm;
 
 {
   Inno Setup
-  Copyright (C) 1997-2024 Jordan Russell
+  Copyright (C) 1997-2025 Jordan Russell
   Portions by Martijn Laan
   For conditions of distribution and use, see LICENSE.TXT.
 

+ 1 - 1
Projects/Src/Shared.ScriptFunc.pas

@@ -2,7 +2,7 @@ unit Shared.ScriptFunc;
 
 {
   Inno Setup
-  Copyright (C) 1997-2024 Jordan Russell
+  Copyright (C) 1997-2025 Jordan Russell
   Portions by Martijn Laan
   For conditions of distribution and use, see LICENSE.TXT.
 

+ 1 - 0
whatsnew.htm

@@ -125,6 +125,7 @@ issigtool --key-file="MyKey.ispublickey" verify "MyProg.dll"</pre>
   <li>Support function <tt>ExtractArchive</tt> is new and replaces <tt>Extract7ZipArchive</tt>. The old name is still supported, but it is recommended to update your scripts to the new name and the compiler will issue a warning if you don't.</li>
   <li>Archive extraction now overwrites read-only files which already exist in the destination directory without prompting the user. Previously this would cause an extraction error.</li>
   <li>Archive extraction now honors the file system redirection state set by 64-bit install mode and support function <tt>EnableFsRedirection</tt>.</li>
+  <li>Added new <tt>AddEx</tt> function to support class <tt>TExtractionWizardPage</tt> to add password-protected archives.</li>
 </ul>
 <span class="head2">Other changes</span>
 <ul>