// // Sample Program for SingleApplication // #include #include #include #include "SingleApplication.h" static const char* appid = "{03B5011A-6053-11d2-95F7-000000000000}"; class MyApplication : public SingleApplication { public: MyApplication() : SingleApplication(appid) {} void InitFirstInstanceSafely() { fprintf(stderr, "[%ld] The first instance goes.\n", GetCurrentProcessId()); } void InitSecondInstanceSafely() { fprintf(stderr, "[%ld] The second instance stops.\n", GetCurrentProcessId()); } } _application_instance; int main() { try { if (!_application_instance.IsFirstInstance()) return 1; fflush(stderr); Sleep(10000); } catch (SingleApplication::InitFailed) { fprintf(stderr, "Test failed (%ld)\n", GetLastError()); fflush(stderr); } return 0; }