COM編程培訓
COM編程培訓
課程簡介:
課程重點介紹動態(tài)連接庫、調用約定、回調函數(shù)、類成員函數(shù)作為回調函數(shù)、C++對象內存布局、字符串處理、COM基礎、COM開發(fā)等內容。
課題
內容
準備知識
動態(tài)連接庫
- 組成
- 初始化
- DLL數(shù)
- DLL輸出表
- DLL使用:靜態(tài)鏈接和動態(tài)加載
- 按序號訪問DLL函數(shù)/數(shù)據(jù)
調用約定
- C調用約定
- C++調用約定
- 其他調用約
回調函數(shù),類成員函數(shù)作為回調函數(shù)
- C++對象內存布局
- 簡單C++對象內存布局
- 虛函數(shù)表
- 函數(shù)重載時的內存布局
字符串處理
- 字符串編碼
- TCHAR
- BSTR
- CComBSTR和_bstr_t
COM基礎
概念
- 組件,接口和容器
- COM歷史
- COM架構
接口
- IUnknow接口
- 容器接口和功能接口
COM類
- 類廠
- 包容和聚合
COM庫
- 接口,COM類,COM類廠和COM庫間關系
- 進程內組件和進程間組件
COM開發(fā)
手工COM開發(fā)組件端
- 接口聲明
- __declspec(novtable)
- 理解HRESULT類型
- 定義COM類
- COM對象生命周期管理
- 實現(xiàn)引用計數(shù)
- 實現(xiàn)接口查詢
- 定義類廠
- 類廠生命周期管理
- 類廠接口查詢
- 類廠創(chuàng)建COM對象實例
- 實現(xiàn)COM庫回調函數(shù)
- DLL COM組件注冊
手工COM開發(fā)客戶端
- COM庫初始化和卸載
- 獲得接口
- CComPtr智能指針
EXE COM組件開發(fā)
- EXE組件的WinMain
- 客戶端創(chuàng)建指針時指定上下文:CLSCTX_LOCAL_SERVER
快速演練:使用ATL開發(fā)COM組件
提高
雙調度
- Invoke方法
- VARIANT結構
- CComVariant 操作變體類型
- Invoke方法調用示例
- 使用類型庫
- 腳本語言中使用雙調度
COM連接點模型
包容和聚合
COM內存管理
COM線程模型
COM對象,寓所和線程
- 寓所的概念
- 寓所的創(chuàng)建
- 跨寓所傳遞COM對象
結構化存儲
復合文檔
調試與診斷
分布式COM介紹
從COM到COM+
使用其他語言開發(fā)COM:C#
?
?
?
?
?
?
?
?
?
?