通知
すべてクリア
Topic starter
2005年6月29日 9:09 AM
WinXP sp2 VC++6.0 MFC
スレッド処理の中でDomodalダイアログを立ち上げるとエラーになります。
何故でしょうか?
// 初期設定
BOOL XXXXXXDlg::OnInitDialog()
{
// スレッド処理
HANDLE hThread;
hThread = (HANDLE)_beginthread(Func,0,this);
}
void Func(LPVOID pParam)
{
XXXXXXDlg* pDlg = (XXXXXXDlg*)pParam;
処理
:
YYYYYDlg myR;
myR.DoModal();<<===========エラー
}
Topic starter
2005年6月29日 10:29 AM
CWinThreadを利用することで自己解決いたしました。
しかし、Windowsの関数を利用しないとDomodalを構築できないのですね。
勉強になりました。
2005年6月29日 10:38 AM
> しかし、Windowsの関数を利用しないとDomodalを構築できないのですね。
Windows の関数...?MFC の~ のことですか。
XXXXXXDlg がおそらく CDialog なりのサブクラスだからうまく動かなかっただけで、
API で直接ダイアログを生成する分には CWinThread は不要です。