創建項目
創建MFCDLL項目
MFC項目中這么聲明
生成dll工程
可以看到庫文件的生成目錄,保存下來
創建測試用c#項目
我們創建一個按鈕調用我們剛才的函數
這邊這么調用MFC庫的函數入口。這里並不是com控件,所以不能直接從引用里面拉進來。
否則會報 未能添加引用,請確保此文件可訪問並且是一個有效的程序集或COM組件。 錯誤
添加using
調用方式就像類的靜態方法
這里看到設置的入口函數和聲明的不一樣。
所以會報錯
我們把入口 entryPoint修改一下。或者刪掉。只要保持和庫那邊設置一致即可
效果如下
現在我們添加MFC的窗口
在聲明出使用doModel的原因是退出函數這里會釋放資源。如果show會出錯
C#方面這樣調用
成功顯示窗口
在跨語言調用中,有可能會出現消息隊列不一致問題。這里測試一下。在不亂設置的情況下。窗口消息響應
我們在MFC中設置一個按鈕消息
運行可以正常顯示
消息是能正常處理的