Domanda

Per un'applicazione che verrà eseguita come servizio Windows
Memorizzo i valori delle impostazioni in una chiave di registro HKLM software.

Ho una biblioteca che accede ai valori del mio registro.

Ho una semplice applicazione della console di test che utilizzo per verificare che il codice funzioni.

Per eseguire il debug tramite la mia applicazione della console di test, devo eseguire VS2010 come amministratore.

Tutto funziona:

Console.WriteLine(WindowsRegistry.getTaleoOrgCode("test"));

invoca

Microsoft.Win32.RegistryKey hklmLocalMachineRoot =
Microsoft.Win32.Registry.LocalMachine;
Microsoft.Win32.RegistryKey hklmLocalMachineHbsiTaleoClient =
hklmLocalMachineRoot.OpenSubKey(@"SOFTWARE\Taleo\" + clientName.Trim(), false);
 // read only
if (hklmLocalMachineHbsiTaleoClient != null)

Tramite Debug, è chiaro che Hklmlocalmachinehbsitaleoclient non è nullo.

Ho un'applicazione che utilizza la subroutine della libreria sopra.

Inizio quell'applicazione in VS2010 anche come amministratore.

Tramite Debug, è chiaro che Hklmlocalmachinehbsitaleoclient è nullo.

Prima del debug, mi assicuro che l'applicazione in fallimento
Ha l'ultima versione della mia libreria di routine di registro.

La versione VS2010 Pro è in esecuzione in Windows 7.

Aiuto, per favore e grazie.

È stato utile?

Soluzione

Hans ha ragione nel suo commento che il demone è la virtualizzazione del registro.

Si prega di consultare la mia queestione di follow -up:

https://stackoverflow.com/questions/4980211/how-do-i-search-all-non-virtual-and-virtual-registries-in-vista-win7-et-cetera

Grazie.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top