[英]How to pass the pointer of main Dlg from a thread to a function inside in MFC
有兩個線程共享一個函數。 我想在運行函數時在 Dlg 中顯示信息。 但是我不知道如何傳遞main Dlg的指針。 當我運行以下代碼時,它顯示 ERROR 2061。
XXXTab.h
static void Snap(CBoxUnstackingDlg *CMFCAppDlg);
static UINT __cdecl MtA(LPVOID lpParam);
static UINT __cdecl MtB(LPVOID lpParam);
XXXTab.cpp
void CThirdTab::Snap(CBoxUnstackingDlg *CMFCAppDlg)```
{
}
UINT __cdecl CThirdTab::MtA(LPVOID lpParam)
{
CBoxUnstackingDlg *CMFCAppDlg = (CBoxUnstackingDlg *)lpParam;
Snap(CMFCAppDlg );
}
UINT __cdecl CThirdTab::MtB(LPVOID lpParam)
{
CBoxUnstackingDlg *CMFCAppDlg = (CBoxUnstackingDlg *)lpParam;
Snap(CMFCAppDlg );
}
我發現原因是兩個標題相互包含。 將函數Snap出類Thirdtab可以解決這個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.