MFC/C++

アプリケーションの二重起動防止

BOOL CMAINApp::InitInstance()
{
    hMutex = ::CreateMutex(NULL, FALSE, _T("APP_MutexObject"));
    if(::GetLastError() == ERROR_ALREADY_EXISTS)
    {
        MessageBox(NULL, _T("アプリケーションは\n既に起動しています。"), _T("APP_NAME"), MB_ICONERROR | MB_TOPMOST | MB_OK);
        return FALSE;
    }
}
 
BOOL CMAINApp::ExitInstance()
{
    ::ReleaseMutex(this->hMutex);
    ::CloseHandle(this->hMutex);
}

このカテゴリーの記事を表示する
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/31808468

この記事へのトラックバック

マカフィー・ストア