解決 Hhctrl.ocx 與 user32.dll 相沖的問題

有一些朋友在四月初更新 Windows 之後,執行 CBReader 出現錯誤訊息

The systen DLL user32.dll was relocated in memory. The application will not run properly. The relocation occurred because the DLL C:\WINDOWS\SYSTEM32\HHCTRL.OCX occupied an address range reserved for Windows system DLLs. The vendor supplying the DLL should be contacted for a new DLL.

解決方式請參考此網址:http://support.microsoft.com/kb/935448


底下摘錄上述網址說明:

徵狀 
當您啟動執行 Microsoft Windows XP Service Pack 2 的電腦時,Realtek HD Audio Control Panel 可能無法啟動。此外,您可能會收到下列錯誤訊息: 

Rthdcpl.exe - 系統 DLL 重新定位不正確 

系統 DLL user32.dll 已在記憶體中重新定位。應用程式將不會正確執行。進行重新定位的原因是 DLL C:\Windows\System32\Hhctrl.ocx 佔據的位址範圍是保留給 Windows 系統 DLL。請連絡廠商,提供新的 DLL。

安裝 Realtek Semiconductor Corporation 所提供的 Realtek HD Audio Control Panel (Rthdcpl.exe) 之後,就會發生這個問題。 

發生的原因 
在您安裝安全性更新 925902 (MS07-017) 和安全性更新 928843 (MS07-008) 之後,可能就會發生這個問題。

安全性更新 928843 所隨附的 Hhctrl.ocx 檔案及安全性更新 925902 所隨附的 User32.dll 檔案,具有衝突的基底位址。

如果程式先載入 Hhctrl.ocx 檔案再載入 User32.dll 檔案,就會發生這個問題。 

解決方案
下載資訊 
您可以從「Microsoft 下載中心」下載下列檔案: 

立即下載 935448 套件。 

發行日期:2007 年 4 月 3 日