• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 急,请高手指点一下,在线程中调用COM中的方法,在线等待?

急,请高手指点一下,在线程中调用COM中的方法,在线等待?

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了游戏高手指点解答,vn怎么玩求高手指点,哇嘎速度慢请高手指点,赛鸽育种高手指点,请高手指点等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 急,请高手指点一下,在线程中调用COM中的方法,在线等待?
描述:

我创建了一个进程外组件,并在线程模型选择“Both”,然后选择支持FTM(Free Threaded Marshale),但在启动的线程中仍然无法调用COM中的方法啊,请指点一下,我是这样调用的:
先在InitDialog中初始化,没问题
HRESULT hr = CoInitialize(NULL);
if(FAILED(hr))
{
TRACE("error\n");
return FALSE;
}
// 创建COM对象
hr = CoCreateInstance(CLSID_Simple02, NULL, CLSCTX_ALL,
IID_ISimple02, (void **)&pISimple02);
if(FAILED(hr))
{
CoUninitialize();
TRACE("error\n");
return FALSE;
}
然后,在一按钮中触发一个线程,在线程中无法调用方法,如下:
启动线程:
HANDLE hThread = CreateThread(NULL,0,TestThread,this,0,NULL);
下面是线程实现:
DWORD WINAPI CUseCamDlg::TestThread(LPVOID lParam)
{
BSTR  bstrOS;
hr = pISimple02->GetOSVersion(&bstrOS);//此时失败,请指点
char *pszOS;
pszOS = _com_util::ConvertBSTRToString(bstrOS); 
return 1;
}


解决方案1:

需要初始化

解决方案2:

在线程函数中添加初始化COM的代码

解决方案3:

每个线程中都需要初始化COM

解决方案4:

来晚了.哎

解决方案5:

每个线程中 需要初始化 COM
CoInitialize


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 求高手指点dll安装遇到的怪问题
  • 初学com就遇到问题了,高手指点一下
  • 请各位高手指点,程序如何自动向IE的EDIT控件写入密码和用户名?
  • 请高手指点浏览器插件对应于注册表中的那一个位置
  • 高手指点下串口接收数据的问题
  • 求高手指点!我想获取一个段落的每个字符的格式,有什么好的方法么
  • 求高手指点,如何得到对话框中activex控件的对象
  • 请高手指点!!!CMSCOM控件可否用于多线程的通讯?
  • 使我棘手1天1夜的线程问题,请高手指点
  • 高手指点,关于多线程的调试。

相关文章

  • 2017-06-05 如何HookCopyFile?
  • 2017-06-05 一个动态链接库和静态链接库的问题?
  • 2017-06-05 本人编了个单文档下基于MSCOMM32串口通信程序,但是始终存在bug,请各位大侠指教
  • 2017-06-05 想上传,怎么搬?
  • 2017-06-05 关于64位ActiveXIE插件的制作
  • 2017-06-05 紧急求救:OCX内部实现的键盘底层钩子,在win7的IE下经常失效?
  • 2017-06-05 超级问题,DLL竟然看不见了
  • 2017-06-04 CoCreateInstace函数
  • 2017-06-05 多线程问题(helpme)
  • 2017-06-04 ATL工程error:LNK2005

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ActiveX控件中get()/set()与memebervarial方式问题
    • 我的COMserver程序在win2000的dcomcnfg中怎么看不见
    • 关于ActiveX在除开发机器外都无法运行的疑问
    • AfxParseURL分析的不对!!郁闷
    • 什么是inboundinterface?
    • isafilter编程问题!!
    • 关于一个“windowsize"的ActiveX控件的问题?
    • 玩DLL的高手有请!!!
    • 2个进程间的自定义消息怎么收不到?
    • [讨论]比较两个文件夹,找出文件名相同的文件,求查找的最佳算法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有