VB的32位順序在64位零碎中呈現文件和注冊表自動轉向的處理辦法。本站提示廣大學習愛好者:(VB的32位順序在64位零碎中呈現文件和注冊表自動轉向的處理辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是VB的32位順序在64位零碎中呈現文件和注冊表自動轉向的處理辦法正文
通常用VB 寫的順序在32位零碎上可以正常的運轉,但到了64位零碎中雖然可以運轉但是無法修正OEM信息。經過查找緣由可以發現,當我們在訪問文件夾"SYSTEM32"的時分零碎會自動轉向到文件夾"SYSWOW64"下,當我們在訪問某些注冊表鍵值的時分,和文件轉向相似,零碎也會自動地把順序的訪問轉向到Wow6432Node上面。
先來談談文件零碎的轉向,查找了一些材料,並沒有VB相關的材料,但是可以查到2個相關函數:Wow64DisableWow64FsRedirection(封閉零碎轉向)和Wow64RevertWow64FsRedirection(翻開零碎轉向)。
VB的聲明如下:
Private Declare Function Wow64RevertWow64FsRedirection Lib "kernel32.dll" () Private Declare Function Wow64DisableWow64FsRedirection Lib "kernel32.dll" ()
然後用CALL Wow64DisableWow64FsRedirection語句來封閉文件零碎的轉向。
再來談談注冊表項的轉向:
這個仍然沒有VB方面的材料,但是知道有函數RegOpenEx(VB有這個函數,用法見API閱讀器)可以決議能否轉向,只需在函數的samDesired【Long】參數上加256(&H100)就可以訪問64位的注冊表了。由於API訪問注冊表代碼較多就不往上貼了。