当应用程序因内存耗尽而崩溃时,我想显示消息框

时间:2016-02-19 08:10:56

标签: c++ windows

我希望在应用程序因内存耗尽而崩溃时显示消息框。

但内存不足。

异常处理函数

中再次发生内存异常

我使用了Windows API MessageBoxW功能

MessageBoxW(
    __in_opt HWND hWnd,
    __in_opt LPCWSTR lpText,
    __in_opt LPCWSTR lpCaption,
    __in UINT uType);

有预先制作消息框的方法吗?

如果可能的话,我可以在应用程序因内存耗尽而崩溃时显示它。

有没有好的解决方案?

1 个答案:

答案 0 :(得分:1)

您可以使用包装过程启动程序作为子进程并等待其退出。您需要考虑如何在内存结束时从子进程返回错误代码。子进程终止时,父进程应分析退出代码并决定是否显示错误消息。注意。如果由于您的程序而发生内存不足,这将起作用。然后,在退出时,所有内存都将返回到操作系统,您的父进程可以发出消息。否则,您需要在父进程启动时保留所需的内存量。希望这个策略有所帮助。