Hello.
First, I generated a 1.0.0 build of my 64-bit WPF + C++ mixed application and installed it on my test machine.
Then I produced version 2.0.0 of the installer and created an Updater Project to generate an updates.txt file, which is hosted on my server along with the 2.0.0 setup package.
While configuring the update project:
I provided the correct URL for the installer and local file path.
I specified version 2.0.0.
I selected "Update detection by Registry value" and provided the exact registry path where my application writes its version (confirmed as present on the machine).
I set the expected value to 2.0.0 and checked the box to “Use 64-bit registry locations.”
The problem:
When I run updater.exe for the first time:
It shows a “checking for updates” progress bar briefly and then exits,
Even though my machine’s registry clearly contains Version = 1.0.0 at the specified path and my updates.txt requires 2.0.0.
Additionally:
After this first run, I can still see updater.exe running in the background in Task Manager (it did not exit completely),
When I try to launch it a second time, it does not show any UI, does not open visibly, but remains running in the background again.
What I have confirmed:
The registry value definitely exists and is 1.0.0 (checked manually in HKLM\SOFTWARE\OptimalSlope Ltd\SlopeOptimiser).
The updater’s AppId matches the [Section] in updates.txt.
The updates.txt file itself appears valid and is correctly served from the update URL.
What I have confirmed:
The registry value definitely exists and is 1.0.0 (checked manually in HKLM\SOFTWARE\OptimalSlope Ltd\SlopeOptimiser).
The updater’s AppId matches the [Section] in updates.txt.
The updates.txt file itself appears valid and is correctly served from the update URL.
Questions:
Is there a known issue with registry detection and 64-bit registry keys when using the default updater.exe (which is a 32-bit stub)?
Best Regards.