Archive: Using x64.nsh, but still writing reg node WoW6432Node


Using x64.nsh, but still writing reg node WoW6432Node
Happy new year! :)

The following descriptions are made for a machine using WindowsXP x64. For that I'm using the x64 plug-in.

I'm trying to change my registry executing a .reg file with ExecWait .

ExecWait '"regedit" -s $\"$0$\"' $R0
The installer executes the file and changes the registry. Unfortunately, the changes are made inside the WoW6432Node.

I'm using SetRegView 64 and I've tried ${EnableX64FSRedirection} as well as ${DisableX64FSRedirection} in addition.
In any case the registry changes are still performed on the WoW6432Node.

I've I'm executing the .reg file manualy, everything works fine.

The node I'm trying to change is [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]. (That's exactly the node name given inside the .reg file.)

How is that possible? Have I misunderstand something?

Thanks! :)

CJ

None of those affect an external program. You'll have to use built-in registry commands. You can use reg2nsis to convert the .reg file automatically.


But when it's an internal program, why does it behave different to the manual execution of the file? Shouldn't both actions have the same result?

Reg2NSIS does have to be executed before compiling, doesn't it? I need a solution that works during runtime.


It's not an internal program, but an internal command that runs in the same process. You can only affect your own process with the macros in x64.nsh.


Thanks :)
I've adjusted the registry plugin for my needs. Now it works fine for me. *yay*