当前位置: 首页 > news >正文

一个好网站建设王建设医生网站

一个好网站建设,王建设医生网站,wordpress 搜索标签,深圳著名设计网站大全问题描述 excel操作耗时,想把它放入子线程,但是放入子线程后,运行发现在pWorkbooks指针就是空的,而不放入子线程,程序能够正常运行 QScopedPointer<QAxObject> pExcel(new QAxObject("Excel.Application"));if (!pExcel){RYLog::getInstance()->appendLog(&…

问题描述

excel操作耗时,想把它放入子线程,但是放入子线程后,运行发现在pWorkbooks指针就是空的,而不放入子线程,程序能够正常运行

QScopedPointer<QAxObject> pExcel(new QAxObject("Excel.Application"));if (!pExcel){RYLog::getInstance()->appendLog("Error: Failed to create Excel Application object. Is Excel installed?");return;}pExcel->setProperty("Visible", false);// 获取工作簿集合  使用QScopedPointer智能指针可以在作用域结束时自动释放指针QScopedPointer<QAxObject> pWorkbooks(pExcel->querySubObject("Workbooks"));if (!pWorkbooks){RYLog::getInstance()->appendLog("Error: Failed to get Workbooks object from Excel.");pExcel->dynamicCall("Quit()"); // 退出Excel进程return;}

问题解决

头文件引用#include "windows.h",并在创建excel的代码前边加上CoInitializeEx(NULL, COINIT_MULTITHREADED);代码就能够运行
Qt 的主线程默认是 STA,所以不需要自己手动调用。但你在子线程使用 COM(例如 QAxObject)时必须手动初始化!

它是 Windows COM(Component Object Model)初始化函数,它的作用是 在当前线程中初始化 COM 库,并指定使用的并发模型。COM 是微软提供的一套组件对象模型,很多 Windows API(比如 Excel 自动化、Shell 操作、DirectShow 等)都基于 COM。要在程序中使用 COM 对象(如 QAxObject 访问 Excel),就必须先初始化 COM。

http://www.dtcms.com/a/421308.html

相关文章:

  • 外贸建站seo优化成都哪个网站建设比较好
  • 专门用来查找网址的网站网页设计工程师工资
  • 谷歌网页做神马网站优化快速排
  • 大城县企业网站建设wordpress主题 苏醒
  • 简单网站建设视频教程下载网站如何布局设计
  • 坪山网站建设流程网站优化的作业及意义
  • 网站建设系统哪家便宜些海外网络服务器
  • 网站管理员怎么联系国外网站翻墙怎么做
  • 58同城烟台网站建设肇庆网站设计
  • 茂名建设网站网站推广的方法有哪些?
  • 电子商务网站开发教程课后答案nginx网站301重定向怎么做
  • 如何开网站卖东西网站集约化建设存在的问题
  • 网站怎么排版昆明网络公司网站建设
  • 网站实时显示网络营销与传统营销的区别是什么
  • 做网站排名大概要多少钱合肥网站开发培训学校
  • 变电站表计读数识别系统分析
  • 山东东成建设咨询有限公司网站wordpress更换域名后
  • 福州公司做网站千锋教育学费
  • 做设计接私活的网站制作一个网址需要多少钱
  • 天猫网站是用什么技术做的做设计比较好的网站
  • 上海网站建设公司推做外贸网站效果好吗
  • 综合门户网站什么意思icp备案证书号查询
  • 购物网站开发视频教程网络舆情监测预警系统
  • 关于seo网站优化公司wap企业网站源码
  • 襄阳论坛网站建设全球域名查询
  • 成都手机网站开发公司简介模板升华
  • 哪家高端网站建设好百度推广一般要多少钱
  • 怎么设计公司的网站模板建设网站目的是什么
  • 乐清柳市网站建设公司扬州百度seo
  • 国外 网站设计整站seo免费咨询