• 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

佚名通过本文主要向大家介绍了 COM中的内存分配错误???等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: COM中的内存分配错误???
描述:

1.环境: 主要是一个custom的MTS组件,代码如下:
    IDL片段:
        import "msxml2.idl";
        import "oaidl.idl";
        import "ocidl.idl";
        ...
        interface IGenerator : IUnknown{
           [helpstring("method GetDOM")] HRESULT GetDOM(
                                     [in,string]const OLECHAR*   
                                     xml,[out]IXMLDOMDocument2** pDoc);
  };
        ...
    程序实现片段:
        STDMETHODIMP CGenerator::GetDOM(const OLECHAR *xml, 
                                        IXMLDOMDocument2 **pDoc){
            HRESULT hr=CoCreateInstance(
                                       CLSID_DOMDocument,
                                       NULL,
                                       CLSCTX_ALL,
                                       IID_IXMLDOMDocument2,(void**)pDoc);
   VARIANT_BOOL isSuc;
   hr=(*pDoc)->loadXML(W2BSTR(xml),&isSuc);
    
   return S_OK;
        }
2. 测试
在Console程序中调试,如下:
    #include <msxml2.h>
    ....... 
    CoInitialize(NULL);
    IGenerator* pGenerator=NULL;
    HRESULT hr=CoCreateInstance(
                               CLSID_Generator,
                               NULL,
                               CLSCTX_ALL,
                               IID_IGenerator,
                               (void**)&pGenerator);
    IXMLDOMDocument2* pDoc=NULL;
    OLECHAR* xml=OLESTR("<xml><Good>kdksdksd</Goods></xml>");
    hr=pGenerator->GetDOM(xml,&pDoc);
    IXMLDOMElement* pElement=NULL;
    /********************************
     *       错误在此!!!             *
     * ge_documentElement失败       *
     ********************************/
    hr=pDoc->get_documentElement(&pElement);
    if(SUCCEEDED(hr){    
        BSTR temp;
        hr=pElement->get_xml(&temp);
        USES_CONVERSTION;
        cout << W2A(temp) << endl;
        pElement->Release();
        pElement=NULL;
    }
    pDoc->Release();
    pDoc=NULL;
    CoUninitialize();     
3. 问题
    
    hr=pDoc->get_documentElement(&pElement);
    该语句报告"内存分配错误"......
    为啥啊???????
    特急,特急,特急,特急,特急,特急


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

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

相关文章

  • 2017-06-04 VC的DLL呼叫VB的Com为何无法显示VB的Form
  • 2017-06-04 求《ATL开发指南》第二版电子书
  • 2017-06-04 ATLCOM组件注册
  • 2017-06-05 跪求:我想做一个输入法,要调用微软拼音的一些接口,有谁知道微软拼音的接口?
  • 2017-06-05 有经验的高手请进
  • 2017-06-04 ATL菜菜问题!
  • 2017-06-04 一个开发数据库和ASP接口的问题(很急)!!!
  • 2017-06-04 各位大侠救命啊,求教如何开发一个封装了一些对mysql数据库操作的com组件。
  • 2017-06-05 ActiveXcontroltestcontainer的生成问题
  • 2017-06-04 com的简单问题,100分求解!

文章分类

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

最近更新的内容

    • 关于activex控件打包注册
    • COM编写DLL回调函数出现问题,急
    • 求IObjectSafe的用法,或例子程序,我需要在网页里用ACTIVEX来显示一些图象,但是ACTIVEX有安全性的要求。请问还有什么其它的方法吗?
    • 关于动画控件的问题
    • 关于CComBSTRBSTRchar之间的转换
    • altcomponsiteControlhtml测试乱码
    • 求directshow将结构地址存储到句柄中的方法
    • 如何实现每个子窗口都在任务栏占用一个位置,像IE一样???
    • 问一个基本的问题
    • dll中使用std::wstring的问题

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

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