Qt程序溃崩时,怎么关闭打开的EXCEL进程?

windows下写的qt程序,操作excel,正常退出时可以直接调用关闭

    workbook->dynamicCall("Close(Boolean)",false);
    excelObj->dynamicCall("Quit(void)");

但问题是程序溃崩(这也是敏感词汇,无语)了就调用不到这部分代码,excel进程就一直存在,怎么破?


网上查了下,使用<dbghelp.h>来处理溃崩,我想使用一个静态函数直接调用,可不知道怎么把excel对象传进去.

LONG CreateCrashHandler(){
    qDebug() << "程序崩溃"; 
    Excel::dealCrash();
    return EXCEPTION_EXECUTE_HANDLER;
}
SetUnhandledExceptionFilter((LPTOP_LEVEL_EXCEPTION_FILTER)CreateCrashHandler);

使用extern 修饰定义一个全局变量试试。

程序是因为什么崩溃的?还要处理一下崩溃问题,如果是可以预知的可以用try catch捕获,在这个里面也处理一下关闭Excel