VB實現自我註冊控制項,即使使用控制項也能做綠色軟體

2021-08-26 01:21:36 字數 872 閱讀 7758

本文講解程式自動監測系統是不是有此控制項,如果沒有,則自動註冊此控制項。這樣就可以實現即使帶控制項也能實現做綠色軟體。

vb程式設計中合理的使用第三方控制項,往往能夠事半功倍。但是使用第三方控制項也有不好的地方,那就是為了保證程式正常執行,必須使程式能夠在系統目錄或程式目錄下找到所用的第三方控制項。要做到這一點通常有兩種辦法:一是把控制項和程式製成乙個壓縮包發行,這樣的缺點是有可能導致在程式傳播過程中丟失控制項檔案。二是製作安裝程式,缺點是製作過程煩瑣。而且上面兩種辦法也不符合綠色軟體的要求。所謂的綠色軟體是指軟體只有單個可執行檔案且無須安裝,目前很受使用者歡迎。那麼有沒有辦法在使用了第三方控制項的情況下實現綠色軟體夢呢?答案是有。

做法是,將第三方控制項以自定義資源檔案方式儲存在程式中,程式執行之後使用控制項之前將所用到的控制項生成到該程式目錄下,完成控制項從可執行檔案中的金蟬脫殼。

具體做法如下:

第一步:將要用到的控制項拷貝到當前工程目錄下,右鍵單擊該控制項,選擇屬性,記下檔案大小。注意,應記下以位元組為單位的具體數字,而不是多少k,以備程式設計使用。

第二步:引用並正常使用該控制項。

第三步:新建資源檔案加入工程,在資源檔案編輯器中新增所使用的第三方控制項為自定義資源(custom),資源號使用預設的101。如果使用了多個控制項則分別新增到資源檔案的101、102......資源項中,脫殼**也要作相應的修改。

第四步:編寫控制項脫殼**,使其讀取資源檔案的資料,在程式當前目錄下生成控制項。

**如下:

注意:將以上**作為乙個模組新增到工程中,並在工程-工程屬性設定中將啟動物件選為sub main,即上面的脫殼**。然後編譯生成exe檔案,將該exe檔案拷貝到其他沒有安裝所用控制項的計算機上執行一下看看是否實現了控制項攜帶之金蟬脫殼。如果是那麼ok!以上為使用乙個控制項的情況,使用多個控制項方法基本相同,大家可以自己做一下。

VB 實現VC TAbControl控制項

vb 實現vc tabcontrol 控制項新建乙個工程檔案 project1 在左側工具欄中點右鍵 此時,在工具欄的右下角會出現剛新增的元件 sstab 拖動改控制項到 form1 中,該控制項索引是從 0開始算的 在屬性視窗的 tabs 中可以設定控制項中選項頁的頁數,tabsperrow 可以...

VB挖空窗體,實現懸浮控制項效果

大家有興趣的可以試試,希望對你們有幫助 使用三個api函式,簡單地說,把窗體裡面所有部分都變成紅色,然後去掉所有的紅色部分,直接複製貼上可以執行,看看神奇效果吧 option explicit private declare function getwindowlong lib user32 ali...

VB中使用WinSock控制項傳送檔案

傳送檔案對於網路程式設計來說是基本的功能,比如遠端控制軟體。在編制乙個軟體時,我從網上下了很多傳檔案的程式,這些程式提供的傳檔案功能根本就不能用。傳文字還可以,傳二進位制檔案根本就不行。因此,作為乙個基本的功能模組,有必要單獨介紹一下。首先,在vb中要傳送字串,你可以這樣寫 dim strdata ...