2010-01-06 29 views
5

Su una piattaforma a 64 bit, il controllo installato non riesce per SQL Reporting Services e Componenti aggiuntivi. Il programma di installazione sta controllando le voci del Registro di sistema sotto il percorso "HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Microsoft SQL Server \ Nome istanza" e la voce del Registro di sistema è disponibile, ma poiché MS SQL Server è un'applicazione a 64 bit, pertanto, il programma di installazione viene reindirizzato a il percorso "HKEY_LOCAL_MACHINE \ Software \ WOW6432node \ Microsoft \ Microsoft SQL Server \ Instance Names" e non ci sono voci per lo stesso. Quindi il controllo di installazione fallisce.Disabilitazione del reindirizzamento del Registro di sistema per una chiave del Registro di sistema su una piattaforma x64

Soluzione: ho provato con le voci che creano manualmente in "HKEY_LOCAL_MACHINE \ Software \ WOW6432Node \ Microsoft \ Microsoft SQL Server \ Instance Names \ RS" e dopo che il controllo di installazione va a buon fine.

In breve, su una piattaforma x64, il controllo di installazione si riferisce alle chiavi di registro di WOW6432node e non a quelle a 64 bit.

Quindi, come posso forzare il mio programma di installazione a 32 bit per accedere ai registri a 64 bit per il corretto controllo di installazione?

Ho provato RegDisableReflectionKey e funzioni correlate come alternativa per il reindirizzamento del registro, ma non ha funzionato alla mia estremità.

Come posso risolvere questo problema?

+0

Possibilmente correlato: * [Disabilita il reindirizzamento del registro in WiX] (http://stackoverflow.com/questions/5947372) * –

+0

E * [Perché un programma di installazione x86 WiX su Windows Vista x64 non scrive le chiavi su Wow6432Node nel registro ?] (http://stackoverflow.com/questions/2933602) * –

risposta

6

Microsoft ha pubblicato informazioni su Registry Reflection che include una descrizione dello KEY_WOW64_64KEY per RegOpenKeyEx.

+0

Grazie. Ora ecco l'altro problema per WIX: tramite WIX, quando sto recuperando il percorso di installazione di un componente a 64 bit accedendo alla sua chiave di registro, a causa del reindirizzamento del registro viene reindirizzato a WOW6432node dove le chiavi del Registro di sistema non esistono. Quindi, tramite WIX, c'è un modo per esaminare la vista del registro a 64 bit con la sola creazione di MSI singolo? Per quanto ne so, un componente deve essere contrassegnato come Win64 = "sì" per far sì che le voci del Registro di sistema vengano scritte sotto l'hive del registro a 64 bit anziché l'hive del Registro di sistema WOW64. Qualche altro suggerimento? – user223572

3

Diritto. L'accesso a una vista alternativa del registro è la risposta. Bene, questo non disabiliterà il reindirizzamento del registro, ma aiuterà nel corretto controllo dell'installazione.

Ho gestito questo problema nel programma di installazione forzandolo a cercare nella vista del registro a 64 bit quando viene eseguito un controllo di installazione per componente a 64 bit.

Problemi correlati