Why is registering x86 build for startup works but x64 does not

42 Views Asked by At

I want to register my application to launch on startup.

I set up the registry entry programmatically, I do it for the x64 build, and check the entry all looks good. But on restarting the machine nothing happens, with no events in the event viewer about it. The same app when built for x86 and registered the same way runs on startup. The key for it is set under WOW6432NODE.

Some info: the app is a WPF C# application. x64 key placed here:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

x86 placed here:

HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run

Both use the full path to the executable, quotes around the path, no parameters. The application requires admin, and the registry editing is done through the app so as admin. I see the app in the Task Manager's Startup tab, it shows with Enabled status.

At one point I put the x86 executable path under the registry key for the regular x64 (the non-WOW6432NODE), and the application did not launch on startup. Placing the x64 build under WOW6432NODE launches the app. So the issue has to do with the x64 registry key. It's odd that some other applications I have are set in under x64 and launch normally on startup.

Any idea what's going on?

0

There are 0 best solutions below