Windows Programming Tips
アプリケーションクラスのInitInstance()で
HANDLE mutex = ::CreateMutex(NULL, FALSE, "Global\\ユニークな名前"); if (ERROR_ALREADY_EXISTS == ::GetLastError()) { // すでに起動しているので終了する return FALSE; }