[問題] MFC中Thread及MessageBox問題
各位版友好,
小弟是MFC新手,
最近在MFC上嘗試寫一個Thread讀檔案後透過呼叫寫好的函式處理檔案內容,
並能透過按鈕實現"暫停"及"繼續"的作用,
內容如下:
pthread = AfxBeginThread(test, s_path);
UINT TAB_Internal::test(LPVOID lpParam)
{
CString* file_path = (CString*) lpParam; //傳檔案路徑
processfile(*file_path); //程式中已宣告的函式
}
上述寫法並沒有通過編譯,
以下有幾點問題想請教...
1.在pthread = AfxBeginThread(test, s_path);顯示錯誤表示AfxBeginThread沒有使用
正確引數,請問我該怎麼寫才是正確的呢?
2.在學習相關的知識時有看到AfxBeginThread的原型如下,
CWinThread* AFXAPI AfxBeginThread(
AFX_THREADPROC pfnThreadProc,
LPVOID pParam,
int nPriority,
UINT nStackSize,
DWORD dwCreateFlags,
LPSECURITY_ATTRIBUTES lpSecurityAttrs)
想請問其中各個參數的作用是什麼(查到的資料有說明,但不是很清楚),
是否每次使用AfxBeginThread時,都需要填滿這些參數呢?
3.先前在JAVA上實作Thread時,Thread的"暫停"以及"繼續"需要自己實作,並沒有函式可
直接呼叫,請問在MFC上也需要自己實做嗎?還是透過thread->suspend();
以及thread->resume();就能夠暫停以及繼續Thread呢?
4.請問MessageBox("mb內容","mb標題",mb_btn);中,mb_btn能夠自行填入自己定義的按
鈕
嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.227.182.240
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1527789193.A.93A.html
推
06/01 04:01,
7年前
, 1F
06/01 04:01, 1F
→
06/01 04:02,
7年前
, 2F
06/01 04:02, 2F
→
06/01 09:31,
7年前
, 3F
06/01 09:31, 3F
→
06/01 09:34,
7年前
, 4F
06/01 09:34, 4F
嗚嗚,我知道現在都用WPF或其他的語言寫啊,先前就聽過MFC很舊很麻煩,但因為工作需
要不得不碰,只好硬著頭皮面對它了。
※ 編輯: Dong0129 (42.73.61.214), 06/01/2018 10:00:32
→
06/01 15:22,
7年前
, 5F
06/01 15:22, 5F
→
06/01 15:25,
7年前
, 6F
06/01 15:25, 6F
嗯嗯,謝謝指教,
也有試過不要傳值,
thread=AfxBeginThread(test,NULL);
還是沒辦法順利編譯過,一樣會提示沒有使用正確引數,傷腦筋。
※ 編輯: Dong0129 (42.73.61.214), 06/01/2018 16:13:32
→
06/01 17:30,
7年前
, 7F
06/01 17:30, 7F
→
06/01 18:16,
7年前
, 8F
06/01 18:16, 8F
→
06/01 18:17,
7年前
, 9F
06/01 18:17, 9F
→
06/01 18:23,
7年前
, 10F
06/01 18:23, 10F
→
06/01 18:24,
7年前
, 11F
06/01 18:24, 11F
→
06/01 18:25,
7年前
, 12F
06/01 18:25, 12F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):