程式語言 - Visual C++ 6.0 - Wow64



使用者應該常常看到這個關鍵字,尤其是在除錯或撰寫64位元作業系統的相關程式,司徒一開始還以為是什麼動物的縮寫,後來才知道這是Windows 32-bit on Windows 64-bit的縮寫,代表32位元程式在64位元作業系統上執行的代號,為什麼要使用這個奇怪的縮寫呢?因為微軟把32位元程式以及64位元程式讀寫的某些特殊路徑改寫(僅適用於64位元作業系統),因此32位元程式就會寫到有包含*Wow64*的路徑;而64位元的程式則是可以正常讀寫,不會有*Wow64*的路徑問題,這樣說好像很模糊,司徒就舉一個Registry例子給大家看一下

正常的Registry路徑例子

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

使用32位元程式在64位元的作業系統執行時,路徑會被改成

HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run

使用64位元程式在64位元的作業系統執行時,路徑就會正常

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run