기능별 주요 API

 

 

프로그램 실행관련
WinExec : 프로세스 생성하고 초기화가 다 될때까지 기다렸다가 리턴함. 내부적으로 CreateProcess 호출

CreateProcess : 프로세스 생성 후 곧바로 리턴함 

ShellExecute :

LoadModule : 모듈 로드(dll)

입력관련
keybd_event : 키 입력

mouse_event : 마우스 입력

SendInput : 키 입력
SendMessage : 키 입력

PostMessage : 키 입력

 WaitforInputIdle : 사용자 입력 받을수 있을때가지 기다리는 함수

프로세스 종료
TerminateProcess : 프로세스 종료 (작업관리자(taskmgr)에서 응용프로그램탭의 작업 끝내기도 ZwTerminateProcess 호출됨)
ExitProcess : 프로세스 종료 (내부적으로 TerminateProcess 호출됨)


파일 관련 

CreateFile : 파일생성, 파일열기
URLDownloadToFile : 파일 다운
DeleteFile : 파일 삭제

DeleteDirectory : 폴더 삭제

PathFileExists : 파일 존재 검사

FindFirstFile : 파일 찾기

GetfileAttributes : 파일 정보 얻기

ini 파일 

GetPrivateProfileInt : ini 값 일기(숫자)
GetPrivateProfileString : ini 값 읽기(문자열)
WritePrivateProfileString : ini값 쓰기(숫자)
WriteProtfileString : ini값 쓰기(문자열)

Registry 관련

RegCreateKeyEx
RegSetValueEx
RegQureyValueEx
RegOpenkeyEx
RegCloseKey
RegQueryInforkey

드라이버 관련 
NtDeviceIoControlFile :

ZwDeviceIoControlFile :

명령인수
GetCommandLine() : 명령인수 가져오기


디버깅 관련
IsDebuggerPresent : 디버깅중인지 검사

NtQueryinformationProcess = 디버깅 중인지 검사 CheckremoteDebuggerPresent와 동일
NtQueryinformationProcess(hProcess, 7 , &hport, sizeof hPrt, & result); 디버그 포트 검사
NtQueryinformationProcess(GetCurrentProcess(0, 0x1e, &hDebugObject, 4, NULL); 디버그 오브젝트 검사
NtQueryObject
NtQueryinformationProcess(xx, 3)NtQueryinformationProcess(xx, 0x1f // ProcessDebugFlag, 4 , NULL );
NtSetinformationThread : 쓰레드를 디버거로부터 감추기
NtSetinformationThread(GetCurrentThread(), 0x11, 0, 0);

+ Recent posts