일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- taglib 만들기
- jQuery 백스페이스
- eclipse 다국어
- 화면보호기 실행 방지
- ajax 배열 파라미터
- 뒤로가기 방지
- eclipse 폰트
- 팝업 종료
- 트리거 이벤트
- DIV 팝업 이외 영역 클릭 시 팝업 닫기
- 폴더만 남기고 파일만 삭제
- 엑셀 UPDATE
- css 말줄임
- eclipse properties
- javascript 낙타
- #오라클 데이터 복구
- jquery_cheat_sheet #jquery_quick_api_reference
- Spring Annotation
- 스킵 네비게이션
- 여러줄 한줄로
- 탭과 클릭 focus 이벤트 구분
- 시퀀스 초기화 프로시져
- i_tail
- JSP Standard Tag Library (JSTL) Tutorial
- 허드슨 포트 변경
- 근무날짜 경력계산
- jquery_api #jquery #api
- javascript Camel
- ajax 배열
- 전화번호 형식 자동 변환
- Today
- Total
Hi~ Summers!!
프로세스 리스트 본문
저도 이전에 데브피아에서 프로세스 정보를 얻는 소스를 찾았습니다.
어느분이 올려주신지는 모르는게 급한와중에 아주 요긴하게 사용했었답니다. 참고하십시요...단, Console입니다.
환경에 옵티마이징 하십시요!!
CreateToolhelp32Snapshot() 메소드는 쓰레드에 의해 돌고있는 프로쎄쓰 정보 / 힙 / 모듈의 정보를 스냅샷찍어서
그 정보를 가져오는 것입니다. 프로세스라는건 시시각각 변화되므로 어느 순간에 스냅샷을 찍어 정보를 찍어보는거구요
프로세스의 정보는 pe32안에 있습니다. MSDN을 통해 멤버를 확인하십시요..루프돌면서 스냅샷에 찍힌 녀석들 가져와서 뿌려주는
루틴이랍니다.
#include "windows.h"
#include "Tlhelp32.h"
#include "stdio.h"
DWORD TaskList();
void main(void)
{
TaskList();
}
DWORD TaskList()
{
HANDLE hProcessSnap = NULL;
DWORD Return = FALSE;
PROCESSENTRY32 pe32 = {0};
hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if (hProcessSnap == INVALID_HANDLE_VALUE)
{
return (DWORD)INVALID_HANDLE_VALUE;
}
pe32.dwSize = sizeof(PROCESSENTRY32);
if (Process32First(hProcessSnap, &pe32))
{
DWORD Code = 0;
DWORD dwPriorityClass;
do
{
HANDLE hProcess;
// Get the actual priority class.
hProcess = OpenProcess (PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID);
//if(!hProcess)
// break;
dwPriorityClass = GetPriorityClass (hProcess);
CHAR Temp[MAX_PATH];
strcpy(Temp,pe32.szExeFile);
printf("%s : %d\n",Temp,pe32.th32ProcessID);
//Temp.MakeLower();
/*if (Temp == ProcessName)
{
if (TerminateProcess(hProcess, 0))
{
GetExitCodeProcess(hProcess, &Code);
}
else
{
return GetLastError();
}
}
*/
CloseHandle (hProcess);
}
while (Process32Next(hProcessSnap, &pe32));
Return = TRUE;
}
else
{
Return = FALSE;
}
CloseHandle (hProcessSnap);
return Return;
}