急急急。请问,COM组件返回字符串时,用什么类型。在线等待

解决方案 »

  1.   

    我是版主
    PChar与BSTR是VB不支持的呀
    variant在VB中也不好用呀
      

  2.   

    Com 本來就是二進制無關的,可以多個開發工具共用的
      

  3.   

    BSTR VB不可能不支持,因为有种说法,BSTR就是BASIC的STRING,,嘿嘿
      

  4.   

    我是版本
    但是为什么我在delphi做的函数如下:
    function TPDMSecurity.Get_UserName: WideString;
    用delphi调用时,没有报错。
    但在VB中调用时,总是在报错呢?把这个函数调用注释掉,就不报错了呢?请问是什么样的错误呢?
      

  5.   

    NOD  halfdream(哈欠)
    com的标准返回olestring
    widestring和bstr也不是一个东西,更不是pchar!
    看书先吧
      

  6.   

    我是版本
    但是为什么我在delphi做的函数如下:
    function TPDMSecurity.Get_UserName: WideString;
    用delphi调用时,没有报错。
    但在VB中调用时,总是在报错呢?把这个函数调用注释掉,就不报错了呢?请问是什么样的错误呢?
      

  7.   

    bstr,如果要返回的化,用olevariant
      

  8.   

    楼主连VB报错时候报的什么错的都不说一下..你的组件方法加了safecall声明吗?
      

  9.   

    "0x77eb1765"指令引用的"0x03f2800"内存。该内存不能为"read"。
    要终止程序,请单击"确定"
    要调试程序,请单击"取消"
       确定   取消这就是VB报的错误
    我的组件方法已经加了safecall声明了。
      

  10.   

    "0x77eb1765"指令引用的"0x03f2800"内存。该内存不能为"read"。
    要终止程序,请单击"确定"
    要调试程序,请单击"取消"
       确定   取消这就是VB报的错误
    我的组件方法已经加了safecall声明了。