2012-10-26 111 views
2

當打開Visual Basic 6項目時,它會自動將activeX控件更新爲最新版本。防止VB6自動升級ActiveX DLL項目中的ActiveX控件

我看到一篇文章說這行必須添加在vbp文件NoControlUpgrade=1中,因爲這種情況不會發生,但它對我無效。在vb6中保存項目時,它會更新vbp中的控件。

1.我該怎麼做這項工作?

2.我該如何讓vb6不要將activeX控件升級爲默認行爲?

奇怪的是,我試圖用一個窗體和幾個imagelists(來自mscomctl.ocx)創建一個新項目,我保存了該項目,然後在記事本中打開了vbp文件,將ocx的版本更改爲較舊的,保存了vbp文件並在vb6中打開它;然後我關閉了vb6,甚至沒有要求我保存該項目,儘管我沒有添加該行NoControlUpgrade=1

但是用我的老項目,對vbp文件做同樣的事情,然後在vb6中打開它並關閉它將導致vb6提示我保存項目(如果我保存它,ocx將被更新)。

+1

項目+屬性,常規選項卡中, 「升級ActiveX控件」 複選框。 –

+0

@HansPassant,這只是在vbp項目中添加'NoControlUpgrade = 1 ...' – GianT971

+2

AFAIK,這個「升級」的「版本」指的是COM接口版本,而不是「文件版本」所有。當Microsoft更新這些庫時,它們通常不會破壞二進制兼容性,因此您一次只能註冊一個。 – Bob77

回答