封裝OCX的辦法有2種:
1. 使用C++的MFC activex項目生成OCX
2. 使用C#的用戶控件生成OCX(.net core好像不支持)
注意:以管理員身份運行Visual Studio 201x,以管理員身份運行CMD窗口用於注冊OCX
注意:如果引用了第三方包,*.lib、*.dll等,首先項目的位數必須跟第三方包一致,IDE運行環境debug/release必須跟第三方包一致,我的電腦是64位,我測試的是32位的ocx
1. 創建MFC-active項目,如果vs沒有安裝active項目,則需要在安裝Visual Studio Installer工具里面單獨的組件包里面 搜索MFC active 進行安裝,創建項目直接下一步就好
2. 創建成功后,項目工具欄視圖》類視圖》選擇Lib文件進行添加方法/屬性
3. 添加方法顯示如下
4. 添加成功后,切換成工具欄視圖》解決方案資源管理器,會出現在三個文件里面,如果不需要當前方法則可以刪除三個文件里面的內容
4. 引用第三方庫注意
5. 點擊生成項目
6. regsvr32 注冊 OCX,特別注意:如果引用了第三方包,則需要將第三方包也copy到ocx的目錄下面,否則會注冊失敗等原因
7. winform使用ocx,創建winform項目,打開視圖界面,左側的工具欄,鼠標右鍵點擊常規字體,會出現右鍵菜單,點擊西選擇項,將cox添加到com組件里面
8. 點擊確定后,左側工具欄會出現一個OCX的com組件,拖動到UI窗體里面,即可使用
擴展:OCX添加回調函數
自定義生成函數:
接收消息:
至此,OCX使用完畢