So, I wanted to make a new portableapp for the first time in 6 months or so.
Registry is bugging me, so I decided to create a SSCCE.
I created HKEY_CURRENT_USER\Software\AAA
in the registry, to mess with. Under that key, I added the value "test" with value 1. I backed up the key, named it AAA.reg and moved it to \Data\settings.
Next, I made a small portableapp, filled the appinfo.ini and help.html with normal values, nothing important. AAAPortable.ini in \App\Appinfo\Launcher looks like this:
[Launch]
ProgramExecutable=AAA\AAA.exe
WorkingDirectory=%PAL:AppDir%\AAA
LaunchAppAfterSplash=true
SinglePortableAppInstance=true
[Activate]
Registry=true
[RegistryKeys]
AAA=HKCU\Sofware\AAA
Nothing too hard, right?
I put a compiled ahk script with a messagebox inside the \App\AAA folder. If you don't trust me, feel free to recompile the code ore insert your own temporary executable.
I let the launcher compile the code, no errors. I changed the value of "test" in the registry to 0, just to know if the registry restoration etc works.
When I run the app, the "0" value gets replaced by a "1". Then I changed the value to a "2" by hand, to simulate my "app" changed that value. I closed by message box and let the launcher close. I noticed 2 things:
- The "2" value stays put inside the registry.
- The "1" value stays put inside the registry file (\Data\settings\AAA.reg), the value change isn't getting backed up.
You've misspelled Software in the RegistryKeys entry. That should fix it.
Thanks, I was working too long on the same file, it seems.
The launcher really should check for these stupid typos
Yes, I set the working directory!