Il codice seguente:
codice:
Flag0 = My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\Software\OFCL", "Dohc", Nothing).ToString
"dovrebbe" leggere il valore di "Dohc" (da me inserito in precedenza) in HKEY_LOCAL_MACHINE.
Il valore esiste, come posso verificare con Regedit, e si trova dove lo ho messo in:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\OFCL (in realtà il Node lo ha aggiunto automaticamente Windows)
Ebbene, non so come è ma ottengo un valore sbagliato... facendo una ricerca tramite Regedit trovo il valore sballato (un vecchio valore precedente, peraltro mai inserito in HKEY_USERS ma sempre in LOCAL_MACHINE) in:
HKEY_USERS\S-1-5-21-1418737058-1048938284-3001049075-1001\Software\Classes\VirtualStore\MACHINE\SOFTWAR E\Wow6432Node\OFCL
Cioè in un posto dove mai più mi sarei sognato di metterlo. Ovviamente anche se scrivo:
codice:
Flag0 = My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\Software\Wow6432Node\OFCL", "Dohc", Nothing).ToString
ottengo sempre il valore in HKEY_USERS....
Domanda: ma come è che non lo trova nel posto giusto e lo trova nel posto sbagliato? Che ha a che fare HK_USERS con LOCAL_MACHINE?? E chi gli ha detto di cercare un HKEY_USERS??