我正在使用 Qt activex (QAxObject) 来读取/写入 excel 文件。
QAxObject* excel = new QAxObject( "Excel.Application", 0 );
QAxObject* workbooks = excel->querySubObject( "Workbooks" );
QAxObject* workBook = workbooks->querySubObject("Open(const QString&)", path);
QAxObject* sheets = workBook->querySubObject( "Worksheets" );
QAxObject* sheet1 = sheets->querySubObject( "Item( int )", 1 );
QAxObject* sheet2 = sheets->querySubObject( "Item( int )", 2 );
//....
Run Code Online (Sandbox Code Playgroud)
我们知道这种机制使用的是excel本身,并且在没有安装excel的计算机上不起作用。
如果代码在这样的计算机上运行(没有安装 excel),那么程序就会崩溃。如何在代码中检测到PC上未安装excel?