Application/MFC

[MFC] 응답 없음 회피하기

devsalix 2023. 2. 22. 16:37
728x90

단일 스레드의 경우 루프문이 돌아갈 때 응답 없음이 발생합니다

 

이럴 때 중간중간 윈도우 메시지를 처리하는 구문만 넣으면

 

응답 없음 없이 프로그램을 개발할 수 있습니다

 

간단히 아래와 같이 작성하면 됩니다

void MyClass::Loop()
{
	MSG msg;
	
	for(DWORD dwCnt = 0; dwCnt < MAXWORD; dwCnt++)
	{
		.....
		
		while(PeekMessage(&msg, m_hWnd, 0, 0, PM_REMOVE))
		{
			TranslateMessage(&msg);
			DispatchMessage(&msg);
		}
	}
}

 

m_hWnd의 경우 Dialog의 핸들을 가져오면 됩니다

 

 


제 글이 도움이 되셨다면 댓글 & 공감 부탁드려요 😀

 

 
728x90
반응형