scoubidou944
Messages postés714Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention19 janvier 2017
-
29 août 2011 à 15:38
scoubidou944
Messages postés714Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention19 janvier 2017
-
13 sept. 2011 à 15:55
Bonjour,
je viens de tomber sur un problème des plus curieux.
J'ai installé Piriform CCleaner et Piriform Defraggler sur mon PC (Win 7 x64 Pro).
Ce code fonctionne :
RegistryKey CurrentKey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft");
Ce code fonctionne aussi (HKCU) :
RegistryKey CurrentKey = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Piriform");
Celui-ci me renvoie null :
RegistryKey CurrentKey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Piriform");
Pourquoi ? J'ai vérifié que la clé existe bien dans RegEdit. Les autorisations semblent être les mêmes sur les clés citées. J'ai ajouté un fichier de manifest :
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />.
J'ai tenté aussi avec les versions surchargées sans résultat :
RegistryKeyPermissionCheck.ReadSubTree, System.Security.AccessControl.RegistryRights.ReadKey
Est ce que quelqu'un aurait une idée parce que je sèche là :/ ?
Merci,
Vince
----------------------------
C++ forever
C# amateur
scoubidou944
Messages postés714Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention19 janvier 2017 12 sept. 2011 à 18:47
Je viens de constater un problème similaire avec CD Burner XP sur la clé :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{7E265513-8CDA-4631-B696-F40D983F3B07}_is1
Idem avec :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{0136AFB8-DA00-30CD-8D3B-8B641065A932}
J'ai essayé en décomposant et ma variable CurrentKey2 est à null aussi:
strPath = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
RegistryKey CurrentKey1 = RootKey.OpenSubKey(strPath, false);
RegistryKey CurrentKey2 = CurrentKey1.OpenSubKey("{0136AFB8-DA00-30CD-8D3B-8B641065A932}");
Et j'ai fait un copier coller donc pas d'erreur de frappe.