OpenProcess 함수
HANDLE WINAPI OpenProcess(
_In_ DWORD dwDesiredAccess,
_In_ BOOL bInheritHandle,
_In_ DWORD dwProcessId,
);
MSDN에서 보면,
dwDesiredAccess : 어떻게 접근할 것인가 정하는 옵션인데,
주로 PROCESS_ALL_ACCESS 로 사용하여 모든권한을 가질 수 있었다.
bInheritaHandle : PID로 접근한 object를 현재 이 함수를 실행하고있는 프로세스에 상속할지 결정하는 인자
dwProcessId : 접근할 목표 Process의 PID
0 or NULL 을 입력하면 모든 Process에 대해 접근한다.
필요 Header 는 WinBase.h 윈도우 8은 Processthreadsapi.h 를 필요로한다.
추가적으로, 소스를 짜보면
int _tmain(int argc, TCHAR * argv[])
{
HANDLE hOpenProc = NULL;
hOpenProc = OpenProcess( PROCESS_ALL_ACCESS,
FALSE,
1234 );
if( NULL == hOpenProc )
{
_tprintf(_T("OpenProcess Failed ! Error Number : %d "), GetLastError() );
return 0;
}
}
급하게 컴파일 돌리지 않고 써본 것이지만, 아직 에러 핸들링이 익숙치 않고, 초기화를 잘 해주지 않는 습관이 있어 이렇게를 통해 연습할게요.
다들 수정이 필요하다 생각하시는 분은 아낌없이 질책해주세요
'개발 > Win32' 카테고리의 다른 글
GetQueuedCompletionStatus 함수 (0) | 2018.02.11 |
---|---|
GetProcessMemoryInfo 함수 (0) | 2018.02.11 |
PROCESS_MEMORY_COUNTERS_EX 구조체 (0) | 2018.02.11 |
QueryFullProcessImageName 함수 (0) | 2018.02.11 |
ZeroMemory 와 memset (0) | 2018.02.09 |