I am looking for a program for Microsoft Windows that can log which program changed a registry key.
Any license and price is fine.
So, about Process Monitor, a. k. a. procmon. When you launch the program, you see this:
As you can see (in the "Operation" column), it logs file and registry access (don't remember what else, but, anyway, only files and registry are shown here). Let's say we only want to log registry key changes. Then we have to add filters, for example:
Those red crosses are the default filters (to exclude the procmon itself from the log, etc.), and the top most green one is the one I just added. Now our log window looks like this:
You can add more filters - for example, for the "Path" to start with "HKCU\Software\Microsoft\blahblah" to monitor that particular registry branch, or to be exactly "HKCU\Software\Microsoft\blahblah\mywonderfulkey" to monitor only that key, etc.
You can also run procmon in "Quiet mode" from the command line, although I am not sure if you can set filters if you do that.