Check Registry problem with GUID
Posted: Tue Nov 01, 2016 3:25 pm
I have not had any trouble using Check Registry before, but with this particular key I am searching for, I always get the return value NO$VALUE even if the key does not exist. I just want to check for the key's existence so I am using Check Registry and leaving the Value field blank. I've also tried using Read Registry and picking a Value from the key to check for, but this always returns empty even if the key and value do exist.
For an example, I need to check if a program is installed by verifying the product GUID exists in the following path: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Say for example, I'm looking for Microsoft .NET Framework 4.5, the GUID is: {92FB6C44-E685-45AD-9B20-CADF4CABA132}
My InstallAware code would be (copied data):
~InstallAware Clipboard Data~
~Check Registry~
~{834FE6AC-9ED5-417C-A019-793E6BD78176}~
~net4.5_check_installed~
~2~
~SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{92FB6C44-E685-45AD-9B20-CADF4CABA132}~
~~
The returned value is always NO$VALUE regardless of whether that key is actually there or not. If it's not there, I would expect it to return NO$KEY. Is there a limitation on the length that Check/Read Registry can do? Or are there reserved characters I need to escape like the curly braces?
Any advice would be greatly appreciated as to why this doesn't work.
For an example, I need to check if a program is installed by verifying the product GUID exists in the following path: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Say for example, I'm looking for Microsoft .NET Framework 4.5, the GUID is: {92FB6C44-E685-45AD-9B20-CADF4CABA132}
My InstallAware code would be (copied data):
~InstallAware Clipboard Data~
~Check Registry~
~{834FE6AC-9ED5-417C-A019-793E6BD78176}~
~net4.5_check_installed~
~2~
~SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{92FB6C44-E685-45AD-9B20-CADF4CABA132}~
~~
The returned value is always NO$VALUE regardless of whether that key is actually there or not. If it's not there, I would expect it to return NO$KEY. Is there a limitation on the length that Check/Read Registry can do? Or are there reserved characters I need to escape like the curly braces?
Any advice would be greatly appreciated as to why this doesn't work.