• 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 > 奇怪的问题?

奇怪的问题?

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

佚名通过本文主要向大家介绍了各种奇怪的问题,奇怪的问题阅读答案,有一个奇怪的问题,一个奇怪的问题,一些奇怪的问题等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 奇怪的问题?
描述:

COleDispatchDriver cli,im,pro;
IDispatch *tmpdisp;
COleException e;
CLSID clsid;
if (CLSIDFromProgID(OLESTR("RTXServer.RTXAPI"), &clsid) != NOERROR)
{
return;
}
LPUNKNOWN lpUnk;
LPDISPATCH lpDispatch;
//建立主对象
if (GetActiveObject(clsid, NULL, &lpUnk) == NOERROR)
{
HRESULT hr = lpUnk->QueryInterface(IID_IDispatch,
(LPVOID*)&lpDispatch);
lpUnk->Release();
if (hr == NOERROR)
cli.AttachDispatch(lpDispatch, TRUE);
}
// if not dispatch ptr attached yet, need to create one
if (cli.m_lpDispatch == NULL &&
!cli.CreateDispatch(clsid, &e))
{
return ;
}
//建立主对象结束
//建立im对象
static BYTE BASED_CODE parms[] = VTS_BSTR;
cli.InvokeHelper(1, DISPATCH_METHOD, VT_DISPATCH, (void*)&tmpdisp, parms,"SysTools");
im.AttachDispatch(tmpdisp);
    //建立property对象
cli.InvokeHelper(1, DISPATCH_METHOD, VT_DISPATCH, (void*)&tmpdisp, parms,"Property");
pro.AttachDispatch(tmpdisp);
//设置属性
static BYTE parms3[] = VTS_VARIANT VTS_VARIANT;
VARIANT propname, propval;
propname.vt = VT_BSTR;
propname.bstrVal = L"Sender";
propval.vt = VT_BSTR;
propval.bstrVal = L"9999";
pro.InvokeHelper(1, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms3,&propname,&propval );
         VARIANT xx;
static BYTE parmstmp[] = VTS_VARIANT;
pro.InvokeHelper(1, DISPATCH_PROPERTYGET, VT_VARIANT, (void *)&xx, parmstmp,&propname);
/////出错位置
/*********************************
VARIANT propname2, propval2;
propname2.vt = VT_BSTR;
propname2.bstrVal = L"RecvUsers";
propval2.vt = VT_BSTR;
propval2.bstrVal = L"1001,1002";
pro.InvokeHelper(1, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms3,&propname2,&propval2 );
VARIANT xx;
static BYTE parmstmp[] = VTS_VARIANT;
pro.InvokeHelper(1, DISPATCH_PROPERTYGET, VT_VARIANT, (void *)&xx, parmstmp,&propname);
*******************************/
如果最后这部分注释代码 出错位置处出错。而如果注释代码被删(注释)掉,则可以正常进行。


解决方案1:

jietie up

解决方案2:

使用SysAllocString分配BSTR


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

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

  • 奇怪的问题?????
  • 奇怪的问题?

相关文章

  • 2017-06-04 调用CMSComm类函数put_PortOpentrue总是谈出“portalreadyopen”,程序不往下走了
  • 2017-06-05 急急急?请教:如何把现有的工程vc6可执行程序做成dll?在线等待中
  • 2017-06-04 关于用ActiveX做的特殊ComboBox控件的问题
  • 2017-06-04 我的NewATLObject的菜单哪里去了?
  • 2017-06-05 VC操作Word,如何删除Word里面的超链接
  • 2017-06-05 多线程和异步处理到底有什么区别和联系?我到现在还是想不通!
  • 2017-06-05 非常简单的问题,如何在MFC规则DLL里定义全局变量??我是不是很傻?:
  • 2017-06-04 开发一个web页面中的打印控件,用来打印web页中的表格等(包括页面设置、预览等功能),用ATL做好还是用MFCACTIVEX,有什么好的建议吗
  • 2017-06-05 万分火急的一个问题!!!万分感谢!!如果能够搞定,我将我的全部分数送上!
  • 2017-06-04 编译错误提问

文章分类

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

最近更新的内容

    • 新手求助:怎样调试ActiveX控件!先谢了
    • 请教控件开发的疑问
    • 如何在MFC扩展dll内创建线程,并在线程里使用自定义的CDialog控件?
    • 客户端在一个线程中做connect,如何让程序切断connecting??
    • 调用IDispatch::Invoke为何总是出错?内祥
    • 请教一个关于浏览器插件的问题(急)
    • FLEX能多次加载同一个OCX控件吗
    • 很有挑战的问题!内存问题
    • ocx注册的问题~~~
    • ATL开发的控件如何生成cab文件

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

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