| 類名 | 職責 |
|---|---|
| CTestMfcAtlDebugApp | DLL入口,`DllRegisterServer`/`DllUnregisterServer`實現註冊/反註冊 |
| CTestMfcAtlDebugCtrl | **核心控件類**:消息映射(窗口事件)、調度映射(外部調用屬性/方法)、事件映射(向外發送事件) |
| CTestMfcAtlDebugPropPage | 屬性頁顯示 |
library TestMfcAtlDebugLib {
importlib(STDOLE_TLB);
// 調度接口:屬性和方法
dispinterface _DTestMfcAtlDebug {
methods:
[id(DISPID_ABOUTBOX)] void AboutBox();
};
// 事件接口
dispinterface _DTestMfcAtlDebugEvents {
methods: // 事件列表
};
// 類信息:ClassID = DD0CF7EF-A181-428C-B5FC-C44A1C13CA43
coclass TestMfcAtlDebug {
[default] dispinterface _DTestMfcAtlDebug;
[default, source] dispinterface _DTestMfcAtlDebugEvents;
};
}
// 1. IDL文件
[id(1)] void Fuck2();
// 2. Ctrl類頭文件聲明
void Fuck2();
// 3. Ctrl類cpp實現
void CTestMfcAtlDebugCtrl::Fuck2() {
AFX_MANAGE_STATE(AfxGetStaticModuleState());
// 具體邏輯
}
regsvr32 C:\path\TestMfcAtlDebug.ocx // 註冊
regsvr32 /u C:\path\TestMfcAtlDebug.ocx // 反註冊
需管理員權限,確保無進程占用依賴DLL。
第二部分將講解:使用`vfw.h`實現攝像頭預覽/拍照,第三部分:圖片裁剪、格式轉換、上傳WebService。