zoukankan      html  css  js  c++  java
  • 关于VC7 ATL ActiveX控件的属性化选项的Bug

    用VS2003做ATL ActiveX开发,遇到以下问题。
    步骤:
    1、利用VC7的“ATL 项目”向导建立的ActiveX工程,(注意:“属性化”选项默认是选中的,保持不变)
    2、在工程中添加“ATL 控件”
    3、给已添加的ATL 控件添加一个BSTR类型的属性
    4、编译控件
    5、Debug控件,在调用控件的BSTR属性时出错,跟踪后错误断点出现在atlcom.h文件的
    //If InternalAddRef or InternalRelease is undefined then your class
     //doesn't derive from CComObjectRoot
     STDMETHOD_(ULONG, AddRef)() {return InternalAddRef();}
     STDMETHOD_(ULONG, Release)()
     {
      ULONG l = InternalRelease();
      if (l == 0)
       delete this;
      return l;
     }
    方法处。

    解决办法:
    用“ATL 项目”向导建立ActiveX工程时,去掉工程的“属性化”选项即可。这应该是VC7的Bug

  • 相关阅读:
    冲刺 09
    冲刺08
    个人作业-买书
    冲刺07
    冲刺 06
    软件工程 寻找小水王
    冲刺04
    冲刺 03
    冲刺 02
    冲刺3
  • 原文地址:https://www.cnblogs.com/youyou/p/193850.html
Copyright © 2011-2022 走看看