Regset64 containing quotes - help requested

I am hoping someone can help with issues I am having using Regset64.

The value I am trying to set contains quotations and no matter what I have tried I can’t get it to apply correctly.

The machine is 64bit and I am trying to apply to the 64bit key not Wow6432Node key.

The key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
AppSetup=UsrLogon.cmd, cmstart.exe, c:\windows\syswow64\ssiwtslg.exe "C:\Program Files (x86)\Scalable Software\Survey\SSI Survey Client"

Exporting from registry:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"AppSetup"="UsrLogon.cmd, cmstart.exe, c:\\windows\\syswow64\\ssiwtslg.exe \"C:\\Program Files (x86)\\Scalable Software\\Survey\\SSI Survey Client\""

I know you have to manually escape the backslashes but how do you handle the quotes? I have also tried replacing the inner set of quotes with "%22 followed by %22 after the last quote, but no luck with that either.

I can get it to apply to the 32bit registry correctly by doing the following:

createfile until end-reg-edit-commands
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon]
"AppSetup"="UsrLogon.cmd, cmstart.exe, c:\\windows\\syswow64\\ssiwtslg.exe \"C:\\Program Files (x86)\\Scalable Software\\Survey\\SSI Survey Client\""
end-reg-edit-commands
move __createfile setup.reg
wait regedit /s setup.reg

But since I am assuming that regedit is run by Bigfix client which is a 32bit app, it will only apply to 32bit registry?

Here is my action:
regset64 "[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]" "AppSetup"="UsrLogon.cmd, cmstart.exe, c:\\windows\\syswow64\\ssiwtslg.exe \"C:\\Program Files (x86)\\Scalable Software\\Survey\\SSI Survey Client\""

any ideas what I am doing incorrectly?

Thanks for any help provided. Generally, its a pretty simple action, export registry, and use either regset or regset64 to apply the key to the correct location.

Scott

Give this a try …

https://www.ibm.com/developerworks/community/forums/html/topic?id=77777777-0000-0000-0000-000014755219

Tim,

Thanks for the reply. I saw that article before and I tried that with no luck. I then followed the advice at the end by creating a .reg file and imported that, but it only created the .reg key in the 32bit registry, not the native 64bit registry.

createfile until end-reg-edit-commands
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon]
"AppSetup"="UsrLogon.cmd, cmstart.exe, c:\\windows\\syswow64\\ssiwtslg.exe \"C:\\Program Files (x86)\\Scalable Software\\Survey\\SSI Survey Client\""
end-reg-edit-commands
move __createfile setup.reg
wait regedit /s setup.reg

Any other ideas?

Thanks,
Scott

Remember, the BES Client, by default, only knows about the 32bit world.

You need to tell the Action Script that what you are about to do should apply to the 64bit “side of the house”.

NOTE: I HATE how Microsoft decided to implement 64bit in Windows!!

To directly update the Registry via Action Script … https://www.ibm.com/support/knowledgecenter/en/SS2TKN_9.5.0/com.ibm.bigfix.doc/Platform/Action/c_regset64.html

If you want to do it via a “Command Line” type command, I believe you need to disable wow64 redirection first …
https://www.ibm.com/support/knowledgecenter/en/SS2TKN_9.2.0/com.ibm.tivoli.tem.doc_9.2/Platform/Action/c_action_uses_wow64_redirection.html

Most recent docs are on the developer site

https://developer.bigfix.com/action-script/reference/execution/action-uses-wow64-redirection.html

There is also a regset64 command see https://developer.bigfix.com/action-script/reference/registry/regset64.html

Thanks Alan,

Using the wow64 redirection and creating the .reg file below works:

action uses wow64 redirection false
createfile until end-reg-edit-commands
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon]
"AppSetup"="UsrLogon.cmd, cmstart.exe, c:\\windows\\syswow64\\ssiwtslg.exe \"C:\\Program Files (x86)\\Scalable Software\\Survey\\SSI Survey Client\""
end-reg-edit-commands
move __createfile setup.reg
wait regedit /s setup.reg

Thanks so much for the information so I can get the issue resolved.

Just for curiosity, do you or anyone know a way to get regset64 command line working with embedded quotations?

Thanks,
Scott

Have you tried putting in the percent encode value for quote in instead?

I have tried %22. Tried it in many variations as well, but no luck.

Thanks,
Scott