This commit is contained in:
DavidXanatos 2024-06-24 14:57:07 +02:00
commit bb98510bab
12 changed files with 62 additions and 57 deletions

View File

@ -13,6 +13,9 @@ indent_size = 4
[my_version.h]
charset = utf-8-bom
[SandboxiePlus/SandMan/Troubleshooting/lang_*.json]
charset = utf-8-bom
[*.{c,h,cpp}]
indent_style = tab
indent_size = unset

View File

@ -2,27 +2,33 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).
## [1.14.x / 5.69.x] - 2024-xx-xx
### Changed
- changed Qt 5 version to Qt 5.15.14 with OpenSSL 3.3.1 [#3994](https://github.com/sandboxie-plus/Sandboxie/pull/3994) (thanks offhub)
## [1.14.2 / 5.69.2] - 2024-06-19
### Added
- added SbieIni option to modify password-protected configs [#3903](https://github.com/sandboxie-plus/Sandboxie/issues/3903)
- usage: set|append|insert|delete [/passwd:********] <section> <setting> <value>
- note: use /passwd without the password to have SbieIni prompot for the password on the console, this hides the password from view and from bing captured with the command line
- Note: use /passwd without the password to have SbieIni prompot for the password on the console, this hides the password from view and from bing captured with the command line
- added checkbox for "PromptForInternetAccess" option to the New Box Wizard
- added option "HideNonSystemProcesses" to hide processes not in a sandbox from processes lists for sandboxed processes.
- added option "HideSbieProcesses" to hide Sandboxie Work Process(SbieSvc,SandboxieRpcSs,etc.).
- added option "HideNonSystemProcesses" to hide processes not in a sandbox from processes lists for sandboxed processes
- added option "HideSbieProcesses" to hide Sandboxie Work Process (SbieSvc, SandboxieRpcSs, etc.)
- added option "HideFirmwareInfo"
- when it is set, the programs that try getting fireware information will get false data from HKEY_CURRENT_USER\\SOFTWARE\\SandboxieHide\\FalseFirmwareValue
- added template "BlockAccessWMI" to prevent sandboxed processes from accessing system information through WMI.
- added template "BlockLocalConnect" to prevent sandboxed processes from sending network packs to localhost to breakout sandbox.
- added template "BlockAccessWMI" to prevent sandboxed processes from accessing system information through WMI
- added template "BlockLocalConnect" to prevent sandboxed processes from sending network packs to localhost to breakout sandbox
- added new option "AllowCoverTaskbar" for [#3975](https://github.com/sandboxie-plus/Sandboxie/issues/3975)
- added RPC Port message filter mechanism to block unsafe RDP calls via the driver [#3930](https://github.com/sandboxie-plus/Sandboxie/issues/3930)
- Usage: "RpcPortFilter=Port,ID,Label" label is optional
- added "Job Object" Options page to colelct all job object related options
- usage: "RpcPortFilter=Port,ID,Label" label is optional
- added "Job Object" options page to colelct all job object related options
### Changed
- Extend "Temp Template" to make it could delete local template section.
- Extend "Temp Template" to make it could delete local template section
### Fixed
- fixed security issue with the newly introduced experimental "UseCreateToken=y" mechanism
@ -32,7 +38,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
- Sandboxie will add CustomChromiumFlags=--disable-features=PrintCompositorLPAC to chrome based browsers command line
- Note: Less Privileged App Container (LPAC) don't work with sandboxie currently
- fixed Problem accessing a relative symlink with a target that starts with a dot [#3981](https://github.com/sandboxie-plus/Sandboxie/issues/3981)
- fixed Bug - Can't open a sandbox's properties window via double-click in System Tray context window [#3861](https://github.com/sandboxie-plus/Sandboxie/issues/3861)
- fixed Can't open a sandbox's properties window via double-click in System Tray context window [#3861](https://github.com/sandboxie-plus/Sandboxie/issues/3861)
- fixed Delay in launching forced programs after version 1.12.9 [#3868](https://github.com/sandboxie-plus/Sandboxie/issues/3868)
- this issue was introdiced in 1.13.0 and may have broadly affected other usecases and cause variosue problems
- fixed issue with Misc Options list
@ -40,7 +46,6 @@ This project adheres to [Semantic Versioning](http://semver.org/).
## [1.14.1 / 5.69.1] - 2024-06-06
### Added
@ -68,7 +73,6 @@ This project adheres to [Semantic Versioning](http://semver.org/).
## [1.14.0 / 5.69.0] - 2024-05-17
### Added

View File

@ -1,6 +1,6 @@
echo %*
IF "%~3" == "" ( set "ghSsl_repo=openssl" ) ELSE ( set "ghSsl_repo=%~3" )
IF "%~2" == "" ( set "ghSsl_user=DavidXanatos" ) ELSE ( set "ghSsl_user=%~2" )
IF "%~3" == "" ( set "ghSsl_repo=openssl-builds" ) ELSE ( set "ghSsl_repo=%~3" )
IF "%~2" == "" ( set "ghSsl_user=xanasoft" ) ELSE ( set "ghSsl_user=%~2" )
IF "%~1" == "" ( set "openssl_version=3.3.1" ) ELSE ( set "openssl_version=%~1" )
set "openssl_version_underscore=%openssl_version:.=_%"

View File

@ -84,7 +84,7 @@
<QtModules>core;core-private;network;widgets</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QtInstall>Qt5.15.13_msvc2019_64</QtInstall>
<QtInstall>Qt5.15.14_msvc2019_64</QtInstall>
<QtModules>core;core-private;network;widgets</QtModules>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="QtSettings">

View File

@ -84,7 +84,7 @@
<QtModules>concurrent;core</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QtInstall>Qt5.15.13_msvc2019_64</QtInstall>
<QtInstall>Qt5.15.14_msvc2019_64</QtInstall>
<QtModules>concurrent;core</QtModules>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="QtSettings">

View File

@ -67,7 +67,7 @@
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QtInstall>Qt5.15.13_msvc2019_64</QtInstall>
<QtInstall>Qt5.15.14_msvc2019_64</QtInstall>
<QtModules>core;network;widgets</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">

View File

@ -8,7 +8,7 @@ Sandboxie Plus builds under Visual Studio 2019, as it offers the widest compatib
1) We will be installing Visual Studio Community Edition which is sufficient for our purposes, during the installation we need to take care of selecting a Windows SDK version which matches the WDK version we will be installing in the next step.
- If you have VS 2019 already installed, you can open the installer and check which SDK you have and add if necessary one matching the WDK.
2) Next, we will install WDK 20xxx which is required to build the driver, the WDK installer installs the required VS plugin at the end.
3) So far so good, at this point we already have all we need to build Sandboxie Classic. To build the SandMan UI of Sandboxie Plus, though, we also need the Qt Framework, we can use either 5.15.13 or 6.3.x, but since Qt 6.x does not support Windows 7 without custom patches to base components, we will stick with Qt 5.15.13 for this tutorial.
3) So far so good, at this point we already have all we need to build Sandboxie Classic. To build the SandMan UI of Sandboxie Plus, though, we also need the Qt Framework, we can use either 5.15.14 or 6.3.x, but since Qt 6.x does not support Windows 7 without custom patches to base components, we will stick with Qt 5.15.14 for this tutorial.
- Note: however, if you want to build SandMan UI for ARM64, you will need to use Qt 6.3.x or later.
4) We use Qt's online installer and select all required components. I like to also install the source and debug information, but this is just for convenience when debugging and not needed for the build process.
5) Last but not least, we have to install the VS extension for Qt and configure it to point to our Qt installation.

View File

@ -126,7 +126,7 @@
<QtModules>concurrent;core;gui;network;widgets;winextras</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QtInstall>Qt5.15.13_msvc2019_64</QtInstall>
<QtInstall>Qt5.15.14_msvc2019_64</QtInstall>
<QtModules>core;network;gui;widgets;qml;winextras;concurrent;widgets-private;qml-private</QtModules>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="QtSettings">

View File

@ -1124,7 +1124,7 @@ Sie können %USER% verwenden, um für jeden Benutzer die Sandbox in einem eigene
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="746"/>
<source>Prompt user whether to allow an exemption from the blockade</source>
<translation type="unfinished"></translation>
<translation>Den Nutzer fragen, ob er eine Ausnahme von dieser Blockade erlauben will</translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="752"/>
@ -7318,33 +7318,33 @@ an Stelle von &quot;*&quot;.</translation>
<message>
<location filename="Forms/OptionsWindow.ui" line="1711"/>
<source>Limit restrictions</source>
<translation type="unfinished"></translation>
<translation>Limit-Beschränkungen</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="1629"/>
<location filename="Forms/OptionsWindow.ui" line="1636"/>
<source>Leave it blank to disable the setting(Unit:KB)</source>
<translation type="unfinished"></translation>
<translation>Leer lassen, um die Einstellung zu deaktivieren (Einheit: KB)</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="1643"/>
<source>Leave it blank to disable the setting</source>
<translation type="unfinished"></translation>
<translation>Leer lassen, um die Einstellung zu deaktivieren</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="1585"/>
<source>Total Processes Number Limit:</source>
<translation type="unfinished"></translation>
<translation>Limit Gesamtzahl an Prozessen:</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="1615"/>
<source>Total Processes Memory Limit:</source>
<translation type="unfinished"></translation>
<translation>Speicherlimit aller Prozesse zusammen:</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="1622"/>
<source>Single Process Memory Limit:</source>
<translation type="unfinished"></translation>
<translation>Speicherlimit einzelner Prozess:</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="4522"/>
@ -7354,19 +7354,17 @@ an Stelle von &quot;*&quot;.</translation>
<message>
<location filename="Forms/OptionsWindow.ui" line="4711"/>
<source>Don&apos;t allow sandboxed processes to see processes running outside any boxes</source>
<translation type="unfinished"></translation>
<translation>Nicht erlauben, dass sandgeboxte Prozesse die Prozesse außerhalb der Boxen sehen können</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="4718"/>
<source>Prevent sandboxed processes from accessing system details through WMI</source>
<oldsource>Prevent sandboxed processes from accessing system deatils through WMI</oldsource>
<translation type="unfinished"></translation>
<translation>Hindere sandgeboxte Prozesse daran, über WMI auf Systemdetails zuzugreifen</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="4759"/>
<source>Some programs retrieve system details via WMI (Windows Management Instrumentation), a built-in Windows database, rather than using conventional methods. For instance, &apos;tasklist.exe&apos; can access a complete list of processes even if &apos;HideOtherBoxes&apos; is enabled. Enable this option to prevent such behavior.</source>
<oldsource>Some programs read system deatils through WMI(A Windows built-in database) instead of normal ways. For example,&quot;tasklist.exe&quot; could get full processes list even if &quot;HideOtherBoxes&quot; is opened through accessing WMI. Enable this option to stop these heavior.</oldsource>
<translation type="unfinished"></translation>
<translation>Einige Programme rufen Systemdetails über WMI (Windows Management Instrumentation), eine integrierte Windows-Datenbank, ab, anstatt herkömmliche Methoden zu verwenden. Zum Beispiel kann &apos;tasklist.exe&apos; auf eine komplette Liste von Prozessen zugreifen, auch wenn &apos;HideOtherBoxes&apos; aktiviert ist. Aktivieren Sie diese Option, um ein solches Verhalten zu verhindern.</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="4860"/>
@ -7645,8 +7643,7 @@ Dies wird gemacht um bösartige Prozesse in einer Sandbox daran zu hindern, eine
<message>
<location filename="Forms/OptionsWindow.ui" line="811"/>
<source>Allow sandboxed windows to cover the taskbar</source>
<oldsource>Allow sandboxed windows to cover taskbar</oldsource>
<translation type="unfinished"></translation>
<translation>Erlaube sandgeboxten Fenstern die Taskleiste zu verdecken</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="855"/>
@ -7661,7 +7658,7 @@ Dies wird gemacht um bösartige Prozesse in einer Sandbox daran zu hindern, eine
<message>
<location filename="Forms/OptionsWindow.ui" line="1577"/>
<source>Job Object</source>
<translation type="unfinished"></translation>
<translation>Job-Objekt</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="2135"/>
@ -7848,7 +7845,7 @@ Um einen Prozess anzugeben verwenden Sie &apos;$:program.exe&apos; als Pfad.</tr
<message>
<location filename="Forms/OptionsWindow.ui" line="1650"/>
<source>Allow use of nested job objects (works on Windows 8 and later)</source>
<translation>Erlaube Verwendung von verschachtelten Jobobjekten (funktioniert ab Windows 8 und neuer)</translation>
<translation>Erlaube Verwendung von verschachtelten Job-Objekten (funktioniert ab Windows 8 und neuer)</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="887"/>

View File

@ -269,7 +269,7 @@
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="881"/>
<source>Prevent sandboxed windows from being captured</source>
<translation></translation>
<translation></translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="882"/>
@ -462,7 +462,8 @@ To disable this template for a sandbox, simply uncheck it in the template list.<
<message>
<location filename="Windows/BoxImageWindow.cpp" line="37"/>
<source>Creating new box image, please enter a secure password, and choose a disk image size.</source>
<translation></translation>
<translation>
</translation>
</message>
<message>
<location filename="Windows/BoxImageWindow.cpp" line="41"/>
@ -510,7 +511,7 @@ This length permits approximately 384 bits of entropy with a passphrase composed
increases to 512 bits with the application of Leet (L337) speak modifications, and exceeds 768 bits when composed of entirely random printable ASCII characters.</source>
<translation> 128
384
使 Leet(L337) 512 ASCII 768 </translation>
使 Leet(L337) 512 ASCII 768 </translation>
</message>
<message>
<location filename="Windows/BoxImageWindow.cpp" line="164"/>
@ -634,12 +635,12 @@ While the level of isolation is reduced compared to other box types, it offers i
Access to the virtual disk when mounted is restricted to programs running within the sandbox. Sandboxie prevents other processes on the host system from accessing the sandboxed processes.
This ensures the utmost level of privacy and data protection within the confidential sandbox environment.</source>
<translation>使
访访</translation>
访访</translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="441"/>
<source>Hardened Sandbox with Data Protection</source>
<translation></translation>
<translation></translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="442"/>
@ -649,7 +650,7 @@ This ensures the utmost level of privacy and data protection within the confiden
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="443"/>
<source>Sandbox with Data Protection</source>
<translation></translation>
<translation></translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="444"/>
@ -659,7 +660,7 @@ This ensures the utmost level of privacy and data protection within the confiden
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="446"/>
<source>Application Compartment with Data Protection</source>
<translation></translation>
<translation></translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="447"/>
@ -812,7 +813,7 @@ Please browse to the correct user profile directory.</source>
Note: you need to run the browser unsandboxed for them to get created.
Please browse to the correct user profile directory.</oldsource>
<translation>
使便使
使便使
</translation>
</message>
<message>
@ -1317,7 +1318,7 @@ You can use %USER% to save each users sandbox to an own fodler.</oldsource>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="746"/>
<source>Prompt user whether to allow an exemption from the blockade</source>
<translation type="unfinished"></translation>
<translation></translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="752"/>
@ -1327,7 +1328,7 @@ You can use %USER% to save each users sandbox to an own fodler.</oldsource>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="756"/>
<source>Drop rights from Administrators and Power Users groups</source>
<translation> Power Users </translation>
<translation> Power Users Windows Vista Windows </translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="762"/>
@ -1337,7 +1338,7 @@ You can use %USER% to save each users sandbox to an own fodler.</oldsource>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="767"/>
<source>Allow MSIServer to run with a sandboxed system token</source>
<translation> MSIServer 使</translation>
<translation> MSIServer 使</translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="774"/>
@ -1449,7 +1450,7 @@ You can use %USER% to save each users sandbox to an own fodler.</oldsource>
<location filename="Wizards/NewBoxWizard.cpp" line="76"/>
<source>This sandbox content will be placed in an encrypted container file, please note that any corruption of the container&apos;s header will render all its content permanently inaccessible. Corruption can occur as a result of a BSOD, a storage hardware failure, or a malicious application overwriting random files. This feature is provided under a strict &lt;b&gt;No Backup No Mercy&lt;/b&gt; policy, YOU the user are responsible for the data you put into an encrypted box. &lt;br /&gt;&lt;br /&gt;IF YOU AGREE TO TAKE FULL RESPONSIBILITY FOR YOUR DATA PRESS [YES], OTHERWISE PRESS [NO].</source>
<oldsource>This sandbox content will be placed in an encrypted container file, please note that any corruption of the container&apos;s header will render all its content permanently innaccessible. Corruption can occur as a result of a BSOD, a storage hadrware failure, or a maliciouse application overwriting random files. This feature is provided under a strickt &lt;b&gt;No Backup No Mercy&lt;/b&gt; policy, YOU the user are responsible for the data you put into an encrypted box. &lt;br /&gt;&lt;br /&gt;IF YOU AGREE TO TAKE FULL RESPONSIBILITY FOR YOUR DATA PRESS [YES], OTHERWISE PRESS [NO].</oldsource>
<translation> &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; [], [].</translation>
<translation> &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; [], [].</translation>
</message>
<message>
<location filename="Wizards/NewBoxWizard.cpp" line="107"/>
@ -2051,7 +2052,7 @@ Note: The update check is often behind the latest GitHub release to ensure that
<message>
<location filename="Windows/OptionsWindow.cpp" line="1011"/>
<source>This sandbox has been deleted hence configuration can not be saved.</source>
<translation></translation>
<translation></translation>
</message>
<message>
<location filename="Windows/OptionsWindow.cpp" line="1075"/>
@ -3026,7 +3027,7 @@ Unlike the preview channel, it does not include untested, potentially breaking,
<message>
<location filename="Wizards/SetupWizard.cpp" line="677"/>
<source>Sandboxie-Plus applies strict application restrictions, which can lead to compatibility issues. Stay updated with Sandboxie-Plus, including compatibility templates and troubleshooting, to ensure smooth operation amid Windows updates and application changes.</source>
<translation>Sandboxie Plus 使 Sandboxie Plus Windows </translation>
<translation>Sandboxie-Plus 使 Sandboxie-Plus Windows </translation>
</message>
<message>
<location filename="Wizards/SetupWizard.cpp" line="683"/>
@ -3690,7 +3691,7 @@ Do you want to do the clean up?</source>
<location filename="SandMan.cpp" line="1563"/>
<source>This box does not enforce isolation, it is intended to be used as an &lt;a href=&quot;sbie://docs/compartment-mode&quot;&gt;application compartment&lt;/a&gt; for software virtualization only.</source>
<oldsource>This box does not enforce isolation, it is intended to be used as an application compartment for software virtualization only.</oldsource>
<translation></translation>
<translation></translation>
</message>
<message>
<location filename="SandMan.cpp" line="1571"/>
@ -7733,7 +7734,7 @@ If you are a great patreaon supporter already, sandboxie can check online for an
<location filename="Forms/OptionsWindow.ui" line="811"/>
<source>Allow sandboxed windows to cover the taskbar</source>
<oldsource>Allow sandboxed windows to cover taskbar</oldsource>
<translation type="unfinished"></translation>
<translation></translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="855"/>
@ -7807,13 +7808,13 @@ If you are a great patreaon supporter already, sandboxie can check online for an
<location filename="Forms/OptionsWindow.ui" line="4718"/>
<source>Prevent sandboxed processes from accessing system details through WMI</source>
<oldsource>Prevent sandboxed processes from accessing system deatils through WMI</oldsource>
<translation type="unfinished"> WMI 访</translation>
<translation> WMI 访</translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="4759"/>
<source>Some programs retrieve system details via WMI (Windows Management Instrumentation), a built-in Windows database, rather than using conventional methods. For instance, &apos;tasklist.exe&apos; can access a complete list of processes even if &apos;HideOtherBoxes&apos; is enabled. Enable this option to prevent such behavior.</source>
<oldsource>Some programs read system deatils through WMI(A Windows built-in database) instead of normal ways. For example,&quot;tasklist.exe&quot; could get full processes list even if &quot;HideOtherBoxes&quot; is opened through accessing WMI. Enable this option to stop these heavior.</oldsource>
<translation type="unfinished"> WMI(Windows内置数据库) &quot;&quot; &quot;tasklist.exe&quot; 访 WMI </translation>
<translation> WMI(Windows内置数据库) &quot;&quot; &quot;tasklist.exe&quot; 访 WMI </translation>
</message>
<message>
<location filename="Forms/OptionsWindow.ui" line="4777"/>

View File

@ -100,7 +100,7 @@
<QtModules>core;gui;widgets</QtModules>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="QtSettings">
<QtInstall>Qt5.15.13_msvc2019_64</QtInstall>
<QtInstall>Qt5.15.14_msvc2019_64</QtInstall>
<QtModules>core;gui;widgets</QtModules>
</PropertyGroup>
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')">

View File

@ -1,6 +1,6 @@
echo %*
IF "%~7" == "" ( set "ghQtBuilds_hash_x64=f9029e02badd6a79d9bb092f9fb0772214dbcf8cd0122422514291d755860c37" ) ELSE ( set "ghQtBuilds_hash_x64=%~7" )
IF "%~6" == "" ( set "ghQtBuilds_hash_x86=79755f2bf95d0ca305096fc33582cd557345a79aa63f9821002fdddefdc0fd94" ) ELSE ( set "ghQtBuilds_hash_x86=%~6" )
IF "%~7" == "" ( set "ghQtBuilds_hash_x64=30290d82a02bfaa24c1bf37bcb9c074aba18a673a7176628fccdf71197cee898" ) ELSE ( set "ghQtBuilds_hash_x64=%~7" )
IF "%~6" == "" ( set "ghQtBuilds_hash_x86=bf4124046cc50ccbbeb3f786c041e884fd4205cd6e616070a75c850105cbf1db" ) ELSE ( set "ghQtBuilds_hash_x86=%~6" )
IF "%~5" == "" ( set "ghQtBuilds_repo=qt-builds" ) ELSE ( set "ghQtBuilds_repo=%~5" )
IF "%~4" == "" ( set "ghQtBuilds_user=xanasoft" ) ELSE ( set "ghQtBuilds_user=%~4" )
IF "%~3" == "" ( set "qt6_version=6.3.1" ) ELSE ( set "qt6_version=%~3" )