[轉]在Win7 64位註冊ActiveX控件

 

原文做者:  K_H_H
首先必須以管理員身份運行cmd.exe,即在cmd.exe右鍵選擇以管理員身份運行。     目前共有兩個存在網絡盤的文件須要註冊,一個dll,一個ocx。     開始時將兩個文件都拷貝到c:\windows\system32\目錄註冊,但只有dll文件註冊成功,regsvr32那個ocx文件時出現如下錯誤     模塊「%1」加載失敗。\n\n請確保該二進制存儲在指定的路徑中,或者調試它以檢查該二進制或相關的 .DLL 文件是否有問題。\n\n%2。     搜索一下,原來在64位win7上多了一個syswow64目錄,將ocx拷到這個目錄就顯示註冊成功,但很奇怪仍然不可以使用。因而將dll拷到c:\windows\system32目錄,將ocx拷到c:\windows\syswow64目錄,再回到網絡目錄,在那個目錄分別註冊這兩個文件就成功了 附 SysWOW64文件夾 http://kb.cnblogs.com/a/1662767/ WoW64 (Windows-on-Windows 64-bit)是一個Windows操做系統的子系統, 可以運行32-bit 應用程序, 而且在全部的64-bit 版本的windows上都存在- 包括     Windows 2000 Limited Edition     Windows XP Professional x64 Edition, and IA-64     64-bit版本的Windows Server 2003     64-bit版本的Windows Vista     64-bit版本的Windows Server 2008     64-bit版本的Windows 7 在Windows server 2008 R2上, 這是一個可選組件. WoW64被設計用來處理許多在32-bit Windows 和64-bit Windows之間的不一樣, 尤爲是在Windows自身的結構變化上的不一樣.   轉換庫 ========== WoW64子系統是一個輕量級的compatibility layer, 在全部版本的windows上都擁有一樣的接口. 它的主要目的是用來建立32-bit環境, 爲了讓32位的應用程序能夠不通過任何修改就運行在64-bit的系統上, 它提供了必須的接口. 技術上說, WOW64是由三個DLL實現的.     Wow64.dll 是Windows NT kernel的核心接口, 在32位和64位調用之間進行轉換, 包括指針和調用棧的操控.     Wow64win.dll 爲32位應用程序提供合適的入口指針.     Wow64cpu.dll 負責將處理器在32位和64位的模式之間轉換. 註冊表和文件系統 ========== WOW子系統也會處理運行64-bit應用程序的其餘關鍵方面. 好比說, 在管理32位應用程序與windows註冊表的交互時,  會給存儲子系統提供接口(32位的註冊表與64位的註冊表不太同樣.)   操做系統使用%SystemRoot%\system32目錄來存儲64-bit的庫文件和可執行文件. 這樣作是爲了向後兼容, 由於不少舊系統的應用程序都是使用hardcoded的方式來獲取這個路徑的. 當執行32位應用程序的時候, WOW64會將對DLL的請求從system32重定向到%SystemRoot%\SysWOW64, 在SysWOW64目錄中, 包含了舊系統的庫和可執行文件.
相關文章
相關標籤/搜索