跳到主要內容

Visual Basic 6/VB6 MSCOMCTL.OCX 損毀

今天美麗大方的MIS小姐要更新一個古老的VB6專案,沒想到 VB6(Visual Basic 6) 的IDE居然說MSCOMCTL.OCX 損毀。
查了很久,才確認是因為Windows Update(Office Update) 造成. 說人話就是微軟根本放棄VB6,遇到安全性問題更新時不考慮相容性.
詳情請參考: 錯誤訊息或存取當機事件之後您安裝安全性更新 MS16-004
上面連結裡已經有解法,但不見得完全正確。
 文章裡的機碼
HKEY_CLASSES_ROOT\TypeLib\{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}\2.0
可能太舊了,現在有2.1和2.2基本上全刪掉,重新註冊就會好。
32位元系統:
cd %systemroot%\system32
%systemroot%\system32\regsvr32 /u mscomctl.ocx
%systemroot%\system32\regsvr32 mscomctl.ocx
 64位元作業系統
cd C:\Windows\SysWOW64
%systemroot%\sysWOW64\regsvr32 /u mscomctl.ocx
%systemroot%\sysWOW64\regsvr32 mscomctl.ocx 
如果還沒好,死馬當活馬醫,可能是msdatsrc.tlb爛掉。可以去找  VS2005附的 regtlibv12.exe ,在.Net Framework裡。

32位元系統:
cd %systemroot%\system32
regtlibv12.exe msdatsrc.tlb
 64位元作業系統
cd C:\Windows\SysWOW64
regtlibv12.exe msdatsrc.tlb

若還是不行,把更新移除,裝回舊版的VB6元件重跑一次以上步驟, 應該就能正常使用。

留言

這個網誌中的熱門文章

Personal Bookmark

Java SE 6 + Firefox 2 UI 問題 As I do . Google拋棄了了SOAP API,浮想聯翩 https://www.gandi.net/ VS 2005 SP1中文版推出 Windows Vista中文版下載 ASP.NET 2.0網頁執行管線與快取原理 Cache 2.0快取架構與快取資料自動移除架構圖 flickr sync 分享與試用 SUN Looking Glass 3D圖形介面發布1.0 雅虎勵精圖治推動改革 Wait and see 國內某SOC疑遭駭客入侵 大砲開講 Very Important! 微軟公佈Vista安全程式介面草案 一窺Google開原碼庫房乾坤 qing is writing a dig girl net... wait and see

DBeaver 介面語言

DBeaver是我個人頗常用的一套跨平台Database管理工具,最近升級後發現Windows版本居然變成簡體中文,而且無法切換為英文。

自然人憑證讀卡機驅動程式

鳥毅用的是第一代的自然人憑證讀卡機,EZ100PU(後來有同事買EZmini可以讀SIM卡似乎更好),每年報稅時用一次。 本來只是要申請些政府業務,一時之間找不到光碟,沒想到在 驅動程式下載 居然看到Linux和Mac的驅動程式,剩下的就是政府單位的網頁和程式應該改版了吧!!!