15,471
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
#include <tchar.h>
#include <Windows.h>
LONG WINAPI MyUnhandledExceptionFilter(_EXCEPTION_POINTERS* ExceptionInfo)
{
std::cout << "UnhandledExceptionFilter" << std::endl;
return EXCEPTION_CONTINUE_SEARCH;
}
DWORD CALLBACK Thread(LPVOID lpParam)
{
// 禁用异常对话框
//_CrtSetReportMode(_CRT_ASSERT, 0);
//_CrtSetReportMode(_CRT_ERROR, 0);
//_CrtSetReportMode(_CRT_WARN, 0);
//测试1
int* p = (int*)1;
delete p;
std::cout << p << std::endl;
//测试2
//int k = 0;
//int j = 9;
//int m = j / k; //异常
//std::cout << m << std::endl;
return 0;
}
int _tmain(int argc, TCHAR* argv[])
{
SetUnhandledExceptionFilter(&MyUnhandledExceptionFilter);
CreateThread(NULL, 0, &Thread, NULL, 0, NULL);
_tsystem(_T("pause"));
return 0;
}
LONG WINAPI MyUnhandledExceptionFilter(_EXCEPTION_POINTERS* ExceptionInfo)
{
std::cout << "UnhandledExceptionFilter" << std::endl;
return EXCEPTION_CONTINUE_SEARCH;
}
int _tmain(int argc, TCHAR* argv[])
{
SetUnhandledExceptionFilter(&MyUnhandledExceptionFilter);
int* p;
delete p;
std::cout << p << std::endl;
//int k = 0;
//int j = 9;
//int m = j / k; //异常
//std::cout << m << std::endl;
return 0;
}