|
2번 중복실행 방지를 어떤방식으로 하셨나요?
보통 중복실행 방지는 Mutex를 이용하곤 하는데...
3번까지는 허용하고 그이상은 실행안되게하려면?
여러가지 방법이 있겠지만...
그냥 간단히 중복실행방지 코드를 3번 복사해 넣으시면 될듯 합니다.
샘플..
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
HANDLE mutex=NULL;
const char *mutexname[3] = {"MyProgram1","MyProgram2","MyProgram3"};
int i=0;
for(;i<3;i++)
{
mutex = OpenMutex(MUTEX_ALL_ACCESS, false, mutexname[i]);
if(mutex==NULL)
{
mutex = CreateMutex(NULL,true,mutexname[i]);
break;
}
}
if(i>=3)
{
ShowMessage("현재 프로그램이 가동중입니다...");
return 0;
}
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
....
그럼..
DoyongID 님이 쓰신 글 :
: 어플리케이션을 3번까지만 중복 실행하게 하고, 4번째부터는 중복 실행안되게 하려고 합니다..
:
: 2개이상 못띄우게 하는건 알겠는데, 3개이상은 어떻게 해야 하나요? 실행중인 중복 어플리케이션 갯수를 알아내는 함수는 없을까요?
|