msrty
Posts: 2
Joined: Wed Apr 15, 2026 2:27 pm

Per User Install / Uninstall Registry Key

Hi all,

I'm currently building an MSI that has has Per-user only as the installation type. I'm expecting an uninstall registry key to go under HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall but when I build the MSI and install it, the uninstall registry key goes under HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall instead.

Am I assuming incorrectly or have I setup the project incorrectly?

I have tried a brand new project, ive only made sure that Per-User only is selected under Installation Type and added my Files under Files and Folders. Everything is as default.

Thanks,

Marty
Catalin
Posts: 7794
Joined: Wed Jun 13, 2018 7:49 am

Re: Per User Install / Uninstall Registry Key

Hello Marty and welcome to our forums,

I've done some tests and indeed reproduce the behavior you mentioned.

Thing is, it looks like this is the intended behavior.

I have found the following StackOverflow thread:

How and why installation "per-user" manages to write to HKLM?

which describes the same behavior.

I have also checked on my machine and it looks like very few apps actually write to HKCU instead of HKLM - for example, out of all the apps I have installed on my machine only OneDrive and Slack seem to have their entries there. Such apps are not Windows Installer (MSI) based and I think that's why.

Let me know if you have any other questions and I will gladly assist.

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
msrty
Posts: 2
Joined: Wed Apr 15, 2026 2:27 pm

Re: Per User Install / Uninstall Registry Key

Thanks Catalin :)

Appreciate your response.

I did notice only certain applications would have their registry keys under HKCU but didn't notice the EXE/MSI difference at the time of investigating and thats what threw me.

Would there be anyway to force it in Advanced Installer?

Thanks,

Marty
Catalin
Posts: 7794
Joined: Wed Jun 13, 2018 7:49 am

Re: Per User Install / Uninstall Registry Key

You are always welcome, Marty! :)
but didn't notice the EXE/MSI difference at the time of investigating and thats what threw me
Yeh, that seems to be what is causing this.
Would there be anyway to force it in Advanced Installer?
Unfortunately, it looks like no, because this is the basic behavior of Windows Installer (the technology Advanced Installer is built upon).

Those EXE packages that we see that write their registries there most likely do not use the Windows Installer technology and they manually create those registry entries.

Apparently, the per-user only changes the ARP visibility (the Add or Remove Programs). A per-user installation will only appear in the ARP for the user who installed it. It does not necessarily mean that the ARP uninstall key moves to HKCU.

We can also see this in the following article:

Windows Installer Properties for the Uninstall Registry Key

It states that the registries are under HKLM.

I think this seems a bit suprising mostly because other registry entries that you author in the installer go under HKCU. But there seem to be a difference between authored registry entries (created by you) and Windows Installer’s own ARP/uninstall registration.

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Building Installers”