응용 프로그램 개발/C++, MFC, Windows
[MFC] 다이얼로그 중복 실행 방지
닉ㄴ네
2021. 4. 30. 16:40
728x90
반응형
어플리케이션 클래스의 InitInstance()에 다음과 같은 코드를 추가한다.
이때, 다이얼로그를 여는 등의 액션이 일어나기 전인 부분에 추가해야한다.
BOOL CTestApp::InitInstance()
{
// 중복 실행 방지
BOOL bIsDuplicateWindow = FALSE;
m_hMutex = ::CreateMutex(NULL, FALSE, _T("mtx"));
if (GetLastError() == ERROR_ALREADY_EXISTS) bIsDuplicateWindow = TRUE;
if (m_hMutex) ::ReleaseMutex(m_hMutex);
if (bIsDuplicateWindow)
{
AfxMessageBox(L"프로그램이 이미 실행 중입니다.");
return FALSE;
}
}
728x90
반응형