[問題] 有關MFC使用C#的問題 (CLR)
不好意思,想請教各位大大。
我嘗試將MFC C++透過DDX/DDV使用c#的 windows Form
http://msdn.microsoft.com/zh-tw/library/1te0bbs8(v=vs.90).aspx
可以正確的開啟且運用
但我將此專案包裝成dll供給其它人使用的同時。
(在別的專案上,將自己mfcDlg.dll和WindowsControlLibrary1.dll複製過去)
在執行的時後,則會Crash在
/*virtual*/void CXSScheduleUIDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_ManagedControl(pDX, IDC_SCHEDULE_GANTT, m_ctrlGantt); Here
}
(這個m_ctrlGantt是使用c#的control)
(CWinFormsControl<XSScheduleGantt::ucGantt> m_ctrlGantt)
並顯示以下的錯誤。
"An unhandled exception of type 'System.AccessViolationException' occurred in
mfcDlg.dll"
不知是我哪裡處理錯誤,還是有遺漏的部分?
真的感謝各位大大
測試1:若將相關m_ctrlGantt拿掉,均可正常執行。
補充1:
----------------------------------------------------------------------
供給其它人使用,其實只的是供給其它Project使用。都是在本機的電腦上
ProjectA 是一個App
ProjectB 是一個MFCDlg.dll (且透過CLR呼叫C#的control
(WindowsControlLibrary1.dll)
本來懷疑是否是忘記加上AFX_MANAGE_STATE(AfxGetStaticModuleState());
但在App呼叫MFCDlg.dll入口點,有加上去。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 36.231.19.22
※ 編輯: crazycat2 來自: 36.231.19.22 (11/20 17:53)
※ 編輯: crazycat2 來自: 36.231.19.22 (11/20 18:00)
→
11/21 16:45, , 1F
11/21 16:45, 1F