自從我安裝卸載幾次OFFICE和WPS后,VB6就出現了這樣的問題。
然后在網上收集各種解決辦法:
1、第一種:工程文件引用可能有問題,跟本機的相關組件版本不一致。
用記事本打開VBP文件
找到這一行:
Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0; MSCOMCTL.OCX
改為:
Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX
保存即可
打開我的工程文件,發現本來就是2.0的,這種方法就沒有任何用武之地了。
2、第二種:MSCOMCTL.OCX文件本身被破壞。
在網上下載或者從一台不存在問題的機器上復制一個MSCOMCTL.OCX替換System32目錄下的文件並注冊之。發現根本沒有作用。
3、第三種:跟MSCOMCTL.OCX相關聯的庫文件被破壞了。
安裝VB6的SP6補丁,無效。
安裝不同版本的VB6,也是無果。
卸載WPS、OFFICE2007、OFFICE2010等,安裝OFFICE2003並打上SP3補丁。無效。
到這里,我快要瘋了,難道真的要沖新安裝WINDOWS?!於是就不理他了,避免用這個控件組就行了。或者直接用虛擬機開發。心灰意冷了。默默地想了很多辦法,自己去寫個這個組件相關的控件........
偶然的一天,沒事看看各種論壇,翻開一頁又一頁古老的帖子,忽然發現了一條神回復。
4、第四種:注冊表項的問題。
注冊表的831FDD16-0C5C-11D2-A9FC-0000F8754DA1 主鍵下有2.0 和2.1兩個版本,刪除2.1版本這項。
真的可以!
原文鏈接:http://blog.sina.com.cn/s/blog_5ca590bc0102uyr3.html