• 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高手:200分求解一COM的难题!

在线等待COM高手:200分求解一COM的难题!

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

佚名通过本文主要向大家介绍了等待戈多在线阅读,等待哈金在线阅读,15年等待候鸟在线观看,自爱无须等待在线阅读,为你等待在线试听等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 在线等待COM高手:200分求解一COM的难题!
描述:

程序里调用COM的地方如下:
IMN* CTServer::RegisterDriver(IDriver * pDriver)
{
IMN* pMN = NULL;
CoInitialize(NULL);
HRESULT hr = ::CoCreateInstance(CLSID_MN, NULL, CLSCTX_ALL, IID_MN, (void**)&pMN);
if ( SUCCEEDED(hr) )
{
                                         ....
}
else // should not happend
{
ASSERT(0);
}
}
return pMN;
}
问题是这样的:
当主程序启用一个线程调用这个,CoInitialize(NULL)返回的值为S_OK,hr的值也为S_OK;
当主程序启用俩个线程调用这个,在这先称为A,B线程,不论A,B,CoInitialize(NULL)和hr返回的值都为
E_NOINTERFACE,并且pMN指向为0!
怎么解决,若解决,分不够,将开另一个贴子给分!


解决方案1:

CoInitialize(NULL);
//IAudioTransPtr pat;
IRTPAudioPtr pat;
try
{
pat.CreateInstance(__uuidof(RTPAudio));
}
catch (...)
{
MessageBox(NULL, "初始化COM失败, 您将不能够完成有关语音的任何操作\15\12您可以重新安装程序来解决这个问题", "错误", MB_OK | MB_APPLMODAL | MB_ICONINFORMATION);
return 0;
}
你这样做看看

解决方案2:

真的吗?你建com的时候的threadmode 是什么啊?


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

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

  • 在线等待关于queryinterface的问题
  • 急急急急在线等待,想做一个Spbweather,有什么方案吗?
  • CMSChart无法使用,在线等待,3Q
  • 服务问题---在线等待,立马给分!
  • 在线等待,如何指定vc可以去寻找的头文件目录?
  • 奇怪,这问题真是奇怪!!!在线等待
  • 在线等待,200紧急求助dll的问题。
  • 急!急马上给分在线等待!
  • 在线等待-200分求解!!
  • 在线等待,如何监控服务?

相关文章

  • 2017-06-04 DCOM的配置问题,高分。
  • 2017-06-05 看过T0o2y的Windows2000/XP服务与后门技术T-CMD的朋友请进
  • 2017-06-04 基于CRecordset类的classCBook:publicCRecordset无法使用->Open怎么办?
  • 2017-06-05 得到进程ID,怎么取得其他线程的参数列表?
  • 2017-06-04 如何在Clistcontrol中加入进度条控件
  • 2017-06-04 关于com注册的问题:我用regsvr32对我写的COM进行注册,总是不成功各位朋友请帮忙啊!!!
  • 2017-06-04 创建ActiveX控件,出错了?????高手快来!1111
  • 2017-06-04 这个为什么会错?
  • 2017-06-04 求ATL复合控件,让它可以隐藏,又能让他有窗口
  • 2017-06-05 各位大哥!!本人刚接触com完全不明白希望高手帮解释几个问题

文章分类

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

最近更新的内容

    • 问个com最简单的问题(还没有用过com,惭愧
    • 请懂得控件开发的朋友进来看看,谢谢了
    • 如何在程序里向Windows而不是程序本身进程发模拟键盘按键和鼠标操作信息?
    • 在activex中如何获得容器如ie的hWnd
    • 使用类模板时unresolvedexternsymbol
    • 问一个有关TCP/IP设计模型的问题
    • Win98下的APIHook的问题
    • 关于线程同步方式
    • 有什么工具可以查看正在运行的程序所使用的DLL?
    • 在其他窗口获取了数据,在MFCGridCtrl要显示这些数据

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

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