/
/
在dll启动时的代码 ,winxp无法调用AddVectoredExceptionHandler
AddVectoredExceptionHandler(
1
,(PVECTORED_EXCEPTION_HANDLERExceptionHandler );
/
*
因为要设置线程上下文的程序是运行时,所以要挂起主线程,并且为了防止线程堵塞(程序卡死),所以
要先开另一条线程去执行 挂起
-
>断点
-
>恢复
*
/
/
/
线程参数:是主线程
ID
HANDLE hTread
=
CreateThread(NULL,
0
,ThreadProc,GetCurrentThreadId(),
0
);
/
/
线程函数代码
/
/
参数
1
:要传入主线程
ID
DWORD WINAPI ThreadProc(_In_ LPVOID lpParameter)
{
/
/
打开线程句柄
HANDLE hThead
=
OpenThread(THREAD_ALL_ACCESS,TRUE,(DWORD)lpParameter);
SuspendThread(hThead);
/
/
挂起主线程
SetHwBreakPoint(hThead);
RespendThread(hThead);
/
/
恢复主线程
return
0
;
}