此次項目採用.Net技術開發。因此採集卡此次要將VB代碼控制部分進行改變。函數
開始我用VB轉C#工具,生成出來的C#看似有用,我把功能基本上寫了一大部分,通過調試發現根本沒有用。工具
那麼怎麼辦?畢竟這卡官方沒有最新的開發語言支持,當初VB代碼也是我本身摸索出來的,VB代碼寫的控制部分已經通過咱們的實驗都是正確的!spa
因此可否將之前寫的VB部分利用起來,又能和C#語言結合!?.net
因而最佳方案出來啦! 採集卡作成一個VB控件 ActiveX 方式。而後給C#調用!那麼就太方便了呀~這樣以前VB代碼也通過了考證,是能夠的!調試
因而開始搞!htm
第一步先創建VB採集卡控制控件。ci
編譯出來的結果是開發
這個OCX就是我作出來的USB2812 控件。io
在VS2010 工具箱中導入。就能夠看見了。編譯
拖入WINFROM 中就能夠看見了!!!
同時引用中就能夠看見2個自動被引入的dll。。。很奇怪這2個DLL這麼來的???有什麼做用?
後來我沒次更新一次 OCX,在VS中就有從新搞一次,很是的複雜,還容易弄壞winfrom。。。這個真不是一個辦法。
因而我就開始着手研究這個dll 是怎麼來的。想對於ocx我更喜歡這個DLL,有了DLL 豈不更方便?
因而上網差資料 發現
「將ocx文件轉換成C#程序引用的DLL文件的辦法
詳細出處參考:http://www.jb51.net/article/34766.htm」
1.打開VS2008或VS2010命令提示符(此例用VS2008)
將ocx文件拷貝到d:\Program Files\Microsoft Visual Studio 9.0\VC下
2.註冊ActiveX控件
regsvr32 IB_USBKEY.ocx
3.編譯OCX文件
aximp IB_USBKEY.ocx
生成兩個dll文件,項目中引用Ax前綴的文件
4。將生成的兩個dll文件拷貝到項目中
原來這2個DLL是用這個生成出來的!!!太棒了,OCX每次升級很不方便,用DLL豈不更爽!
因而用這個方法!先用VB作OCX,而後轉成.NET 用的DLL,引入便可用了!
爲何會出現2個呢?據我觀察,Ax前綴的DLL 對USB2812LIB進行的封裝,加了析構函數。
因此在NEW的時候 用AxUSB2812LIB
、
大功告成!!
=============================================================