我尝试了两种方法将Word文档加载到Qt qaxwidget中,但都没有成功退出winword.exe进程。
我的第一次尝试
ui->axWidget->setControl("D:/1.doc");
QAxObject *app = ui->axWidget->querySubObject("Application");
app->dynamicCall("Quit()");
有时以下内容可行,但不可靠:
ui->axWidget->("Word.Application");
setProperty("DisplayAlerts", false);
setProperty("Visible", false);
ui->axWidget->setControl("D:/1.doc");//then call this line of code
QAxObject *app = ui->axWidget->querySubObject("Application");
ui->axWidget->dynamicCall("Close(bool)", false);
ui->axWidget->clear();
app->dynamicCall("Quit()");
我应该怎么做才能正确关闭你" winword.exe"过程
我的环境是qt4.8.0 + vs2008。
答案 0 :(得分:0)
第一个解决方案应该是正确的,但还有一些其他因素限制我关闭流程。
第二种解决方案完全是错误,当我拨打ui->axWidget->setControl("D:/1.doc");
时," Word.Application"失控了。
所以,我们想要一个 Word文档加入 Qt qaxwidget ,我的解决方案是
QProcess p;
QString c = "taskkill /im winword.exe /f";
p.execute(c);
p.close();