我想问一下 在我打开word之后进行编辑,编辑完成关闭的时候 怎么关不掉后台呢 任务管理器始终存在word.exe,最后关闭程序也只能释放最后打开的一个Word

不会就瞎写 2023-08-16 18:52:55

 //新建一个word应用程序,并设置为可见
    Word = new QAxWidget(mparent);
    Word->setControl("word.Application");
    Word->setProperty("Visible(bool)", bVisable);
    Word->setProperty("DisplayAlerts(bool)", bVisable);  // 禁用警告和对话框
    //获取所有的工作文档
    documents = Word->querySubObject("Documents");
    documents->setProperty("DisplayAlerts(bool)", bVisable);  // 禁用警告和对话框
    documents->setProperty("Visible(bool)", bVisable);
    auto act = mparent->rect();
    Word->setGeometry(/*mparent->x(), mparent->y(), mparent->width(), mparent->height()*/act);

    //以文件template.dot为模版新建一个文档
    documents->dynamicCall("Add(Variant)", m_strFilePath);
    //获取当前激活的文档
    document = Word->querySubObject("ActiveDocument");
    document->setProperty("DisplayAlerts(bool)", bVisable);
    document->setProperty("Visible(bool)", bVisable);
    if (document)
        m_bOpened = true;
    else
        qDebug() << "document  null";
    AllTables = document->querySubObject("Tables");

    Word->setControl("word.Application");
    Word->setProperty("Visible(bool)", bVisable);
    Word->setProperty("DisplayAlerts(bool)", bVisable);  // 禁用警告和对话框
    Word->setControl(m_strFilePath);
    Word->show();

if (documents)  documents->dynamicCall("Close(Variant, Variant, Variant)", "wdDoNotSaveChanges", "", "");
if (Word) Word->dynamicCall("Quit(Variant, Variant, Variant)", "wdDoNotSaveChanges", "", "");
 

 if (documents)documents = nullptr;
        }

        if (Word)
        {
            Word = nullptr;
            delete Word;
        }

 

我想问一下 在我打开word之后进行编辑,编辑完成关闭的时候 怎么关不掉后台呢 任务管理器始终存在word.exe ,最后关闭程序也只能释放最后打开的一个Word(比如我打开了5个 只有最后一个可以关掉 ,前面四个关不掉)

...全文
250 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
不会就瞎写 2023-08-16
  • 打赏
  • 举报
回复
我会了哈哈哈哈哈

438

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧