Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo descrive alcune modifiche apportate al Registro di sistema nelle versioni basate su x64 di Microsoft Windows Server 2003 e Microsoft Windows XP Professional x64 Edition. Descrive in che modo il sistema operativo Windows x64 Edition archivia le informazioni del Registro di sistema per programmi a 32 bit e programmi a 64 bit.
Numero KB originale: 896459
Riepilogo
Importante
In questa sezione, metodo o attività viene illustrata la procedura per modificare il Registro di sistema. Se, tuttavia, si modifica il Registro di sistema in modo errato, possono verificarsi gravi problemi. Pertanto, assicurarsi di osservare attentamente la procedura seguente. Per una maggiore protezione, eseguire il backup del Registro di sistema prima di modificarlo. Successivamente, è possibile ripristinare il Registro di sistema se si verifica un problema. Per altre informazioni su come eseguire il backup e il ripristino del Registro di sistema, fare clic sul numero di articolo seguente per visualizzare l'articolo della Microsoft Knowledge Base: 322756 Come eseguire il backup e ripristinare il Registro di sistema in Windows
I computer che eseguono una versione basata su x64 di Microsoft Windows Server 2003 o Microsoft Windows XP Professional x64 Edition usano un layout del Registro di sistema diverso per gestire programmi a 32 bit e a 64 bit. Le modifiche al layout del Registro di sistema nelle versioni x64 Edition del sistema operativo Windows assicurano che i programmi hardcoded .dll percorsi, impostazioni del programma e altri valori dei parametri non vengano sovrascritti.
Per impedire che le impostazioni del Registro di sistema a 32 bit sovrascrivono le impostazioni del Registro di sistema a 64 bit, i computer che eseguono una versione basata su x64 di Microsoft Store le impostazioni per i programmi a 32 bit in un nuovo ramo del Registro di sistema. Gli utenti non notano modifiche durante l'installazione del programma. Il processo di reindirizzamento del Registro di sistema consente alle installazioni del programma e alle impostazioni di configurazione del programma di accedere alla sottochiave del Registro di sistema corretta senza l'intervento dell'utente.
I programmi a 32 bit e i programmi a 64 bit in esecuzione in una versione x64 di Windows funzionano in modalità diverse e usano le sezioni seguenti nel Registro di sistema:
I programmi in modalità nativa a 64 bit vengono eseguiti in modalità nativa e i valori e le chiavi di accesso archiviati nella sottochiave del Registro di sistema seguente:
HKEY_LOCAL_MACHINE\Software
I programmi a 32 bit vengono eseguiti in modalità WOW64 e le chiavi di accesso e i valori archiviati nella seguente sottochiave del Registro di sistema:
HKEY_LOCAL_MACHINE\Software\WOW6432node
Reindirizzamento del Registro di sistema
Per supportare la coesistenza di stati di registrazione e programma COM a 32 bit e a 64 bit, il sottosistema WOW64 presenta programmi a 32 bit usando un'altra visualizzazione del Registro di sistema. Il sottosistema WOW64 usa il reindirizzamento del Registro di sistema per intercettare le chiamate del Registro di sistema a livello di bit. Il reindirizzamento del Registro di sistema assicura inoltre che le chiamate al Registro di sistema vengano indirizzate ai rami corretti nel Registro di sistema.
Quando si installa un nuovo programma o quando si esegue un programma in un computer Windows x64 Edition, le chiamate del Registro di sistema effettuate da programmi a 64 bit accedono alla sottochiave del HKEY_LOCAL_MACHINE\Software
Registro di sistema senza reindirizzamento. WOW64 intercetta le chiamate del Registro di sistema a che vengono effettuate da programmi a HKEY_LOCAL_MACHINE\Software
32 bit e quindi li reindirizza alla HKEY_LOCAL_MACHINE\Software\WOW6432node
sottochiave. Reindirizzando solo le chiamate al programma a 32 bit, WOW64 assicura che i programmi scrivano sempre nella sottochiave del Registro di sistema appropriata. Il reindirizzamento del Registro di sistema non richiede la modifica del codice del programma e questo processo è trasparente per l'utente.
Sottochiavi del Registro di sistema inclusi nel reindirizzamento
Le sottochiavi del Registro di sistema seguenti vengono reindirizzate nelle versioni correnti del sistema operativo Windows x64 Edition:
HKEY_LOCAL_MACHINE\Software\Classes
HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc
HKEY_LOCAL_MACHINE\Software\Microsoft\COM3
HKEY_LOCAL_MACHINE\Software\Microsoft\EventSystem
Importante
Il reindirizzamento delle chiavi del Registro di sistema può cambiare nelle versioni successive del sistema operativo. Gli sviluppatori di software sono invitati a evitare di scrivere codice programma basato su elenchi documentati in precedenza di chiavi reindirizzate. Al contrario, il codice deve essere scritto per verificare lo stato di reindirizzamento prima di effettuare chiamate alla visualizzazione logica a 32 bit o a 64 bit del Registro di sistema.
Reflection del Registro di sistema
La reflection del Registro di sistema fornisce un metodo in tempo reale per contenere sempre le sezioni a 32 bit e a 64 bit del Registro di sistema. Si consideri, ad esempio, un programma a 32 bit denominato Hello.exe che funge da server OLE a 32 bit, ma che può anche gestire le richieste da client a 64 bit. La reflection del Registro di sistema consente al programma Hello.exe di mantenere sia il Registro di sistema a 32 bit che il Registro di sistema a 64 bit aperto per gestire sia le chiamate di programma a 32 bit che a 64 bit.
La reflection consente l'esistenza di due copie fisiche dello stesso Registro di sistema per supportare operazioni native e WOW64 simultanee. La maggior parte delle chiavi riflesse sono chiavi di classe. Le chiavi di classe vengono scritte con una filosofia "last writer wins" e l'handle per la chiave viene chiuso quando la chiave di classe a 32 bit o a 64 bit viene scritta e chiusa.
L'elenco seguente contiene alcuni esempi della filosofia "last writer wins":
- Dopo aver eseguito un'installazione pulita del sistema operativo Windows x64 Edition, la versione a 64 bit di Wordpad.exe viene registrata per gestire i file .doc. Il riflettore del Registro di sistema copia la registrazione .doc dalla sezione del Registro di sistema a 64 bit nella sezione del Registro di sistema a 32 bit.
- Quando si installa una versione a 32 bit di Microsoft Office, Winword.exe viene registrato per gestire i file .doc nella visualizzazione del Registro di sistema a 32 bit. Il riflettore del Registro di sistema copia queste informazioni nella sezione del Registro di sistema a 64 bit. Pertanto, sia i programmi a 32 bit che i programmi a 64 bit avviano la versione a 32 bit di Winword.exe per i file .doc.
- Quando si installa la versione a 64 bit di Microsoft Office, la versione a 64 bit di Winword.exe viene registrata nella sezione del Registro di sistema a 64 bit per gestire i file .doc. Il reflector del Registro di sistema copia anche queste informazioni nella sezione del Registro di sistema a 32 bit in modo che i programmi a 32 bit e a 64 bit avviino la versione a 64 bit di Winword.exe per i file .doc.
Note
Gli sviluppatori possono usare la funzione RegQueryReflectionKey per determinare lo stato di reflection per una determinata chiave e usare la funzione RegDisableReflectionKey e la funzione RegEnableReflectionKey per disabilitare e abilitare la reflection del Registro di sistema per una determinata chiave.
Chiavi del Registro di sistema condivise
Alcune sottochiavi del Registro di sistema contengono informazioni costanti presenti in una sola copia del Registro di sistema anche se queste chiavi vengono visualizzate sia nelle viste del Registro di sistema a 32 bit che in quelle del Registro di sistema a 64 bit. Questa operazione viene definita reflection del Registro di sistema.
Nelle versioni correnti dei sistemi operativi Windows x64 Edition, le seguenti sottochiavi del Registro di sistema vengono condivise tra programma a 32 bit e 64 bit e non vengono riscritte in base al livello a 32 bit o a 64 bit del programma o del processo:
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\SYSTEMCERTIFICATES
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CRYPTOGRAPHY\SERVICES
HKEY_LOCAL_MACHINE\SOFTWARE\CLASSES\HCP
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\ENTERPRISECERTIFICATES
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\MSMQ
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\NETWORKCARDS
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PROFILELIST
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PERFLIB
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PRINT
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PORTS
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\CONTROL PANEL\CURSORS\SCHEMES
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\TELEPHONY\LOCATIONS
HKEY_LOCAL_MACHINE\SOFTWARE\POLICIES
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\GROUP POLICY
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\POLICIES
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\SETUP\OC MANAGER
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\SOFTWARE\MICROSOFT\SHARED TOOLS\MSINFO
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\SETUP
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CTF\TIP
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CTF\SYSTEMSHARED
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTS
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTSUBSTITUTES
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTDPI
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTMAPPER
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\RAS
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\DRIVER SIGNING
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\NON-DRIVER SIGNING
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CRYPTOGRAPHY\CALAIS\CURRENT
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CRYPTOGRAPHY\CALAIS\READERS
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\TIME ZONE
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\TRANSACTION SERVER
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\DFS
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\TERMSERVLICENSING
Importante
La reflection della chiave del Registro di sistema può cambiare nelle versioni successive del sistema operativo. Gli sviluppatori di software sono invitati a evitare di scrivere codice programma basato su elenchi documentati in precedenza di chiavi riflesse. Al contrario, il codice deve essere scritto per verificare lo stato della reflection prima che il programma effettui chiamate alla visualizzazione logica a 32 bit o a 64 bit del Registro di sistema.
Modifiche apportate all'editor del Registro di sistema
Entrambe le versioni a 32 bit e a 64 bit dell'editor del Registro di sistema sono incluse nei sistemi operativi x64 Edition. Per comprendere meglio le sezioni di programma a 64 bit e a 32 bit del Registro di sistema in un computer Windows x64 Edition, usare uno dei metodi seguenti.
Per avviare la versione a 64 bit dell'editor del Registro di sistema
- Accedere al computer Windows x64 Edition usando un account con autorizzazioni amministrative.
- Fare clic su Start, Esegui, digitare regedit nella casella Apri, quindi fare clic su OK.
- Nell'editor del Registro di sistema individuare ed esaminare la seguente sottochiave del Registro di sistema:
HKEY_LOCAL_MACHINE\Software\WOW6432node
Per avviare la versione a 32 bit dell'editor del Registro di sistema
Fare clic su Start, scegliere Esegui, digitare lettera di unità in cui è stato installato Windows x64 Edition\Windows\syswow64\regedit.exe m nella casella Apri , quindi fare clic su OK. L'opzione m consente di eseguire più istanze dell'editor del Registro di sistema.
Note
Quando si accede a un computer basato su Microsoft Windows Server 2003 Service Pack 1 (SP1) o versioni successive o a un computer basato su Windows x64 Edition e si usa Remote Desktop Protocol (RDP) per connettersi a un altro computer basato su Windows Server 2003 SP1 o versioni successive o computer basato su Windows x64 Edition, è possibile visualizzare la sezione a 64 bit del Registro di sistema nel computer remoto. Tuttavia, quando si accede al computer Microsoft Windows Server 2003 che non è stato aggiornato a SP1 o a qualsiasi altro sistema operativo Windows a 32 bit, è possibile visualizzare solo la sezione a 32 bit del Registro di sistema nel computer remoto.
Supporto tecnico per le versioni basate su x64 di Windows
Se l'hardware è incluso in un'edizione windows x64 già installata, il produttore dell'hardware fornisce supporto tecnico e assistenza per l'edizione di Windows x64. In questo caso il supporto e l'assistenza tecnica per tale software vengono forniti direttamente dalla casa produttrice dell'hardware. Il produttore dell'hardware potrebbe infatti avere personalizzato l'installazione della versione x64 di Windows con componenti univoci, quali specifici driver di periferica o impostazioni facoltative, per ottimizzare le prestazioni dell'hardware. Microsoft fornirà assistenza ragionevole se è necessario avere assistenza tecnica con un'edizione di Windows x64. ma potrebbe essere necessario contattare direttamente il produttore dell'hardware, in quanto soggetto più qualificato per fornire supporto per il software preinstallato nell'hardware. Se hai acquistato separatamente un'edizione di Windows x64, ad esempio un'edizione di Windows Server 2003 x64, contatta Microsoft per assistenza tecnica.