in reply to Failed to check if registry key is exist

Why don't you use Win32::TieRegistry module? It allows access to registry without callig external executables.
  • Comment on Re: Failed to check if registry key is exist

Replies are listed 'Best First'.
Re^2: Failed to check if registry key is exist
by roteme (Acolyte) on Feb 28, 2012 at 07:21 UTC

    I Failed even if i use the following code:

    use Win32::Registry; my $Register = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{0 +34106B5-54B7-467F-B477-5B7DBB492624}'; my $hkey; $HKEY_LOCAL_MACHINE->Open($Register,$hkey)|| die print "($!) ($?) ($^E +)\n"; $hkey->Close();

    If i remove the last entrance key {034106B5-54B7-467F-B477-5B7DBB492624} and run it like the following is working good:

    use Win32::Registry; my $Register = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall'; my $hkey; $HKEY_LOCAL_MACHINE->Open($Register,$hkey)|| die print "($!) ($?) ($^E +)\n"; $hkey->Close();

    My question is why? Why {034106B5-54B7-467F-B477-5B7DBB492624} caused to read problem?

    I just need to check if some product is installed

      Did you ever figure this out? I'm able to reproduce this as well.
        Answer found on stack overflow. Wow64 is the issue - use the system native version of reg.exe %Windir%/sysnative/reg.exe