mirror of
https://github.com/storytold/photocraft.git
synced 2026-10-14 19:26:51 -04:00
The Rust standard library has needed Windows 10 since 1.78, so on Windows 7 and 8 PhotoCraft fails at launch with "The procedure entry point ProcessPrng could not be located in the dynamic link library bcryptprimitives.dll" (#2310). The MSI installed anyway. It now has a launch condition: a registry search sets WINDOWS10ORLATER from HKLM\...\Windows NT\CurrentVersion\CurrentMajorVersionNumber, which exists only from Windows 10 on (in the 32- and 64-bit views), and without it the installer stops with "PhotoCraft needs Windows 10 or later." Repair and uninstall still run (Installed). MSI's VersionNT isn't used: it has reported both 603 and 1000 on Windows 10. The README's Windows downloads now say Windows 10 or later is required; the portable zip can't check, as Windows rejects the exe before any of its code runs. Co-authored-by: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
6a852f8852
commit
20cb95bc27
3 files changed
+15
No files matched your search
@@ -331,6 +331,8 @@ sha256-verified. Fetch them with `cargo xtask corpus --all` and run the tests wi
|
||||
| arm64 (Snapdragon and other ARM PCs) | `photocraft-<ver>-windows-arm64.msi` | `photocraft-<ver>-windows-arm64-portable.zip` |
|
||||
| x86 (32-bit) | `photocraft-<ver>-windows-x86.msi` | `photocraft-<ver>-windows-x86-portable.zip` |
|
||||
|
||||
Windows 10 or later is required. On Windows 7 and 8 the app can't start (the installer says so).
|
||||
|
||||
Installers and executables are code-signed.
|
||||
|
||||
### macOS
|
||||
|
||||
@@ -7,5 +7,6 @@
|
||||
<String Id="WelcomeDlgTitle" Value="{\WixUI_Font_Bigger}Welcome to the [ProductName] [PhotocraftVersion] Setup Wizard" />
|
||||
<String Id="WelcomeDlgDescription" Value="The Setup Wizard will install [ProductName] version [PhotocraftVersion] on your computer. Click Next to continue or Cancel to exit the Setup Wizard." />
|
||||
<String Id="VerifyReadyDlgInstallTitle" Value="{\WixUI_Font_Title}Ready to install [ProductName] [PhotocraftVersion]" />
|
||||
<String Id="RequiresWindows10" Value="PhotoCraft needs Windows 10 or later. This version of Windows can't run it." />
|
||||
<String Id="ExitDialogTitle" Value="{\WixUI_Font_Bigger}Completed the [ProductName] [PhotocraftVersion] Setup Wizard" />
|
||||
</WixLocalization>
|
||||
@@ -31,6 +31,18 @@
|
||||
DowngradeErrorMessage="A newer version of PhotoCraft is already installed." />
|
||||
<MediaTemplate EmbedCab="yes" CompressionLevel="high" />
|
||||
|
||||
<!-- Windows 10 or later. The Rust standard library has needed it since 1.78: on Windows 7 and
|
||||
8 the app fails at launch with "The procedure entry point ProcessPrng could not be located
|
||||
in bcryptprimitives.dll" (#2310), so the installer says so instead of installing it.
|
||||
`CurrentMajorVersionNumber` exists only from Windows 10 on, in the 32- and 64-bit
|
||||
registry views alike; MSI's own VersionNT has reported both 603 and 1000 there.
|
||||
`Installed` keeps repair and uninstall working on any Windows. -->
|
||||
<Property Id="WINDOWS10ORLATER" Secure="yes">
|
||||
<RegistrySearch Id="WindowsMajorVersion" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion"
|
||||
Name="CurrentMajorVersionNumber" Type="raw" />
|
||||
</Property>
|
||||
<Launch Condition="Installed OR WINDOWS10ORLATER" Message="!(loc.RequiresWindows10)" />
|
||||
|
||||
<!-- MSI caches this icon using its Id as the filename. Advertised shortcuts to an
|
||||
.exe need an .exe icon identifier (ICE50), even when the source is an ICO. -->
|
||||
<Icon Id="PhotocraftIcon.exe" SourceFile="$(var.IconPath)" />
|
||||
|
||||
Reference in new issue
Block a user