首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

MSChart 控件別機運行報內存錯誤:除註冊 MSCOMCTL.OCX 外,還需註冊表寫入正確路徑與版本

     編輯:程式設計綜合問答

VS2008 專案用 MSChart (MSCOMCTL.OCX),目標機安裝 `MSChart.exe` 並 `regsvr32 MSCOMCTL.OCX` 仍報內存錯誤。原因:OCX 註冊表鍵值缺失或路徑錯誤(特別是 64 位系統)。

完整註冊步驟(管理員 CMD)

  1. 複製 `MSCOMCTL.OCX` 到 `C:\Windows\SysWOW64\`(64 位系統 32 位 OCX 必須放這裡)。
  2. `regsvr32 C:\Windows\SysWOW64\MSCOMCTL.OCX` → 彈窗「成功」。
  3. 檢查註冊表:
    `HKEY_CLASSES_ROOT\CLSID\{...}\InprocServer32` 默認值 = `C:\Windows\SysWOW64\MSCOMCTL.OCX`。
    若路徑指向開發機路徑(如 `D:\Dev\...`),手動修正。
  4. 若專案用 `MSCHRT20.OCX`(舊版圖表),同理註冊並修正路徑。

避坑清單

  • 目標機**必須安裝 VB6 運行時**(`VB6Runtime.exe`),MSChart 依賴它。
  • 專案屬性 → Components → 勾選 `Microsoft Chart Control 6.0`,生成的 `.dep` 文件會包含正確依賴。
  • 打包安裝程式時用 **Inno Setup / NSIS** 含註冊腳本,勿只給 OCX 文件。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved