#include<stdio.h>
#include<windows.h>
int main(){
PROCESS_INFORMATION pi={0};
STARTUPINFOA si={0};
si.cb=sizeof(si);
HANDLE h=CreateProcessA(0,"a",0,0,0,DEBUG_ONLY_THIS_PROCESS,0,0,&si,&pi);
DEBUG_EVENT evt;
while(WaitForDebugEvent(&evt,-1)){
if(evt.dwDebugEventCode==PROCESS_CREATE_THREAD){
printf("CreateThread id=%d\n",evt.dwThreadId);
}
else if(evt.dwDebugEventCode==EXCEPTION_DEBUG_EVENT){
printf("exception %p\n",evt.u.Exception.ExceptionRecord.ExceptionAddress);
}
ContinueDebugEvent(evt.dwProcessId,evt.dwThreadId,DBG_CONTINUE);
}
}