윈도우즈용 응용프로그램, ActiveX, DLL, Windows Service 등을 만들기 위해서 알아두어야 할 기본적인 지식들
출처 : http://radrome.springnote.com/pages/2213794
윈도우, 프로세스, 모듈
- 핸들, ID, 파일이름
파일이름 만으로 전체 경로 얻기 GetFullPathName( sFileName, _MAX_PATH, sFullFull, 0);
-> 문제 : 현재 경로에 파일름만 붙인다.
GetFullPath()(만듬) : 파일일 현재 실행된 파일의 경로에 있는 검사해서 붙인다.
* 윈도우
윈도 Instance : (SDK) GetWindowLong(hWndCur, GWL_HINSTANCE), (MFC)HINSTANCE AfxGetInstanceHandle();
현재 Window Handle : GetCurrentWindowHandle(만듬)
Process Handle (ID) -> Window Handle : HWND GetWindowHandleFromProcessId(DWORD dwProcId) (만듬)
* 프로세스
현재 Process Handle : HANDLE GetCurrentProcess(VOID);
현재 Process ID : DWORD GetCurrentProcessId(VOID);
프로세스(모듈) 파일 이름 : GetModuleBaseName(hProc, 0, sNameOnly, _MAX_PATH);//이름만
GetModuleFileName(0, sFullPath, _MAX_PATH);//전체경로
Win Handle -> Process Handle : GetWindowThreadProcessId
OpenProcess, CreateProcess
Process ID -> Process Handle : GetProcessId() , API인데 MSDN 설명이 안나옴
GetCurrentProcessorNumber() ??
GetCurrentActCtx()??
* 모듈
현재 Module Handle : GetCurrentModule(만듬)
파일이름 -> 모듈핸들 : GetModuleHandle();//현재 프로세스에서만 작동
특정프로세스 안에 있는 모듈 핸들 GetModuleHandle()(만듬), 외부 프로세스에서 작동
모듈ID -> 모듈 핸들 :
* 쓰레드
현재 쓰레드 핸들 : GetCurrentThread()
현재 쓰레드 ID : GetCurrentThreadId()
'IT-개발,DB' 카테고리의 다른 글
[개발/VC++] 탭 브라우저 윈도우 핸들 구하기 (0) | 2011.05.04 |
---|---|
[개발/MFC] 날짜계산, 시간계산 해보자 (0) | 2011.04.29 |
[개발/MFC] 프로세스 강제 종료 두번째 (0) | 2011.04.15 |
[개발/MFC] 유휴 루프 처리 (0) | 2011.04.15 |
[개발/VC] Windows에서 프로그램을 실행할 때 "다음 계정으로 실행" 해결 방법 (0) | 2011.04.15 |
댓글