怎么阻止WIN系统弹出一个“内存不能为read”的对话框
如何阻止WIN系统弹出一个“内存不能为read”的对话框?
以下是我故意写错的一段代码:
这段代码生成EXE运行后,系统会弹出一个“内存不能为read”的对话框,
我想问的问题是:
如何防止对话框弹出,我期望这个EXE无声无息的结束掉
------解决思路----------------------
Windows API有专门做错误处理的,参见
https://msdn.microsoft.com/en-us/library/windows/desktop/ee663265(v=vs.85).aspx
的错误处理和结构化异常处理部分。
使用C++的话在msvc的支持下可以使用__try/__except语法来做结构化异常处理,C语言就需要调用API注册异常处理函数
------解决思路----------------------
可以使用 SetUnhandledExceptionFilter
以下是我故意写错的一段代码:
#include <stdio.h>
int main()
{
int *i = 0;
int b = *i;
printf("请输入被除数:%d\n",b);
return 0;
}
这段代码生成EXE运行后,系统会弹出一个“内存不能为read”的对话框,
我想问的问题是:
如何防止对话框弹出,我期望这个EXE无声无息的结束掉
------解决思路----------------------
Windows API有专门做错误处理的,参见
https://msdn.microsoft.com/en-us/library/windows/desktop/ee663265(v=vs.85).aspx
的错误处理和结构化异常处理部分。
使用C++的话在msvc的支持下可以使用__try/__except语法来做结构化异常处理,C语言就需要调用API注册异常处理函数
------解决思路----------------------
可以使用 SetUnhandledExceptionFilter