Megosztás a következőn keresztül:


Beállításjegyzék-átirányító

A beállításjegyzék-átirányító elkülöníti a 32 bites és a 64 bites alkalmazásokat azáltal, hogy külön logikai nézeteket biztosít a beállításjegyzék bizonyos részeiről a WOW64-en. A beállításjegyzék-átirányító elfogja a 32 bites és a 64 bites beállításjegyzék-hívásokat a megfelelő logikai beállításjegyzék-nézetekhez, és leképozza őket a megfelelő fizikai beállításjegyzék-helyre. Az átirányítási folyamat transzparens az alkalmazás számára. Ezért a 32 bites alkalmazások úgy férhetnek hozzá a beállításjegyzék-adatokhoz, mintha 32 bites Windows rendszeren futnak volna, még akkor is, ha az adatokat más helyen tárolják a 64 bites Windowson.

Windows 10 ARM-en: Az x86-alkalmazások 32 bites logikai nézete mellett az ARM-alapú Windows 10 külön logikai nézetet is tartalmaz a 32 bites ARM-alkalmazásokhoz.

Az átirányított beállításjegyzék elérési útjai alatt lévő kulcsok egy részhalmaza meg van osztva. A megosztott kulcsokra irányuló 32 bites beállításjegyzék-hívások nem lesznek átirányítva. Ehelyett a kulcs egy fizikai másolata lesz leképezve a beállításjegyzék minden logikai nézetébe. Az átirányított kulcsok és a megosztott kulcsok listáját a WOW64 által érintett beállításkulcsok című témakörben találja.

Windows Server 2008, Windows Vista, Windows Server 2003 és Windows XP: Az alkalmazások com-on és más mechanizmusokon keresztüli együttműködésének engedélyezéséhez az átirányított beállításkulcsok egy része is tükröződik. A beállításjegyzék tükrözési folyamata a beállításkulcsokat és az értékeket két beállításjegyzék-nézet között másolja át, hogy azok szinkronizálva maradjanak. A beállításjegyzék tükröződése a Windows 7 és a Windows Server 2008 R2 rendszertől kezdve el lett távolítva. További információ: Beállításjegyzék-tükrözési.

Az alábbi forgatókönyv az alábbi logikai nézetek használatát szemlélteti:

  • Egy 32 bites x86-alkalmazás ellenőrzi a következő beállításkulcs meglétét: HKEY_LOCAL_MACHINE\Software\Hello. Ha a kulcs nem létezik, az alkalmazás a "Hello 32 bites x86 world" alapértelmezett értékkel hozza létre; ellenkező esetben felolvassa és megjeleníti az értéket.
  • Ugyanez az alkalmazás úgy módosul, hogy a "Hello 32 bites x86 world" helyett a "Hello 64 bites világ" szöveget írja, és 64 bites x64-es vagy ARM64-alkalmazásként újrafordított.
  • Windows 10 ARM-en: Ugyanaz az alkalmazás a "Hello 32 bites ARM world" írására és 32 bites ARM-alkalmazásként való újrafordítására módosul.
  • Ha a 32 bites x86-alkalmazás 64 bites Windows rendszeren fut, a "Hello 32 bites x86 world" (Hello 32 bites x86 world) felirat jelenik meg. A 64 bites alkalmazás futtatásakor megjelenik a "Hello 64 bites világ" kifejezés. Windows 10 arm rendszeren: Amikor a 32 bites ARM-alkalmazás 64 bites ARM64 Windows rendszeren fut, a "Hello 32 bites ARM world" (Hello 32 bites ARM world) felirat jelenik meg. Minden alkalmazás ugyanazt a beállításjegyzékfüggvényt hívja meg ugyanazzal az előre definiált leíróval és ugyanazzal a kulcsnévvel; a különbség az, hogy minden alkalmazás a beállításjegyzék logikai nézetén működik, és minden nézet a beállításjegyzék egy külön fizikai helyére van leképezve, amely érintetlenül tartja a sztring összes verzióját.

Az átirányított kulcsok a wow6432Node fizikai helyekre vannak leképezve. A HKEY_LOCAL_MACHINE\Software például HKEY_LOCAL_MACHINE\Software\Wow6432Nodelesz átirányítva. Az átirányított kulcsok fizikai helyét azonban a rendszer fenntartottnak kell tekinteni. Az alkalmazások nem férhetnek hozzá közvetlenül a kulcs fizikai helyéhez, mert ez a hely változhat. További információ: Alternatív beállításjegyzék-nézet elérése.

Windows 10 arm rendszeren: Átirányított 32 bites ARM-kulcsok a WowAA32Node alatti fizikai helyekre vannak leképezve.

A %ProgramFiles% vagy %commonprogramfiles% tartalmazó REG_SZ vagy REG_EXPAND_SZ adatokat író 32 bites alkalmazások számára a WOW64 elfogja ezeket az írási műveleteket, és lecseréli őket a "%ProgramFiles(x86)%" és "%commonprogramfiles(x86)%" értékre. Ha például a Program Files könyvtár a C meghajtón található, akkor a "%ProgramFiles(x86)%" kinyílik a "C:\Program Files (x86)" értékre. A csere csak akkor történik meg, ha a következő feltételek teljesülnek:

  • A sztringnek %ProgramFiles% vagy %commonprogramfiles%kell kezdődnie. Ha a sztring a %kivételével szóközzel vagy karakterrel kezdődik, az nem lesz lecserélve.
  • A %ProgramFiles% vagy %commonprogramfiles% esetének pontosan az ábrán látható módon kell lennie, mivel a sztringek összehasonlítása megkülönbözteti a kis- és nagybetűk megkülönböztetésének értékét. Ha például a sztring %commonprogramfiles%helyett %CommonProgramFiles% kezdődik, akkor a sztring nem lesz lecserélve.
  • A sztring nem haladhatja meg MAX_PATH*2+15 karaktert. Ha túllépi ezt a hosszt, nem cseréli le.
  • A kulcs nem nyitható meg KEY_WOW64_64KEY. Ez a jelző azt határozza meg, hogy a kulcs műveleteit a 64 bites beállításjegyzék-nézetben kell végrehajtani, így a rendszer nem cseréli le. További információ: Alternatív beállításjegyzék-nézet elérése.

Windows Server 2008, Windows Vista, Windows Server 2003 és Windows XP: A KEY_WOW_64_64KEY jelző nem befolyásolja a kulcs cseréjét. Ez a jelző hatással van a Windows 7 és a Windows Server 2008 R2 közötti cserére.

Emellett a system32-t tartalmazó REG_SZ vagy REG_EXPAND_SZ kulcsok helyébe syswow64 lép. A sztringnek a \system32 %windir%vagy alatt lévő elérési úttal kell kezdődnie. A sztringek összehasonlítása nem megkülönbözteti a kis- és nagybetűk különbségét. A környezeti változók az elérési út egyeztetése előtt ki vannak bontva, így az összes következő elérési út lecserélődik: %windir%\system32, %SystemRoot%\system32 és C:\windows\system32. Ez a javítás csak a Windows 7 előtti kulcsokra lesz alkalmazva.

További információkért tekintse meg a következő témaköröket: