코드를 작성하고 MFC를 사용합니다. 프로세스가 있는지 여부를 확인하고 싶습니다. 예를 들어기존 프로세스 확인
:
if (myProcess.exe exists)
do something
else
do something else
내가 어떻게 할 수 있습니까?
감사
코드를 작성하고 MFC를 사용합니다. 프로세스가 있는지 여부를 확인하고 싶습니다. 예를 들어기존 프로세스 확인
:
if (myProcess.exe exists)
do something
else
do something else
내가 어떻게 할 수 있습니까?
감사
는 시도를 잘 Psapi.h 포함 후에이 줄을 추가 :
#pragma comment(lib, "psapi.lib")
또한이 하나의 시도 :
#pragma comment(lib, "kernel32.lib")
당신이 열거해야하는 프로세스
예를 들어,
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682623%28v=vs.85%29.aspx
프로세스는 파일의 프로세스 ID를 저장할 수있다. 정상 종료시 파일을 제거하십시오.
다음 시작시 프로세스에서 파일이 있는지 확인할 수 있으며 파일이 있으면 파일을 읽고 해당 프로세스 ID를 확인할 수 있습니다.
를 사용하여 명명 된 뮤텍스 : 프로그램의 시작 부분에서
을 :
HANDLE hMutex = CreateMutex(NULL, TRUE, "Your program name");
if (GetLastError() == ERROR_ALREADY_EXISTS)
{
// Process already running.
CloseHandle(hMutex);
}
else
{
// No process running.
}
전자 프로그램 끝 :
if (hMutex)
{
CloseHandle(hMutex);
hMutex = NULL;
}
안녕하세요, 귀하의 답변에 감사드립니다. 나는 그것을했지만 오류가 발생했습니다 : "프로 시저 엔트리 포인트 k32 enumprocesses는 동적 링크 라이브러리 KERNEL32.dll에 위치 할 수 없습니다". 어떻게 해결할 수 있습니까? – user1439691