簡體   English   中英

如何將主 Dlg 的指針從線程傳遞到 MFC 內部的函數

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM