VS2010新建win32空工程,加入C++代码:
#include <windows.h>
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
HANDLE hObject = CreateMutex(NULL,FALSE, L"single_instance");
if(GetLastError() == ERROR_ALREADY_EXISTS)
{
CloseHandle(hObject);
MessageBox(NULL, L"程序已经运行!",NULL,NULL);
ExitProcess(0);
}
while(1);
return 0;
}
运行后,没有任何窗口,再次运行,会弹出对话框:“程序已经运行!”