本帖最后由 A_cool 于 2009-11-14 11:14:01 编辑

解决方案 »

  1.   


          IDialogBean = inteface
            function getSessionId: PAnsiChar; stdcall;
          end;
      

  2.   

    多谢Seamour,以提供的方案我正在验证中......
      

  3.   

    经验证,能够编译通过,并且通过Delphi注册到DLL里面的回调函数能够获取实例。但是getSessionId获取的字符串不是期望的值,而是nil或者乱码,在乱码中能够看到部分的期望字符。在接口的实现里面我添加了部分的私有方法,应该不会有什么影响吧?
      

  4.   

    问题已经解决:  2、通过网络找到Delphi映射IDialogBean的方法 
        unit DialogState; 
        interface 
        type 
          IDialogBean = class 
            function getSessionId() : PAnsiChar; virtual; stdcall; abstract; // 关键字顺序必须固定不能任意修改排列顺序 
          end; 
        implementation 
        end.  
      

  5.   

    不明白,Seamour为什么说是瞎折腾,你提供的方法我验证是不行的, 对我来说这就是delphi与VC对象映射的关键问题. 不折腾是无法知道如何正确的映射一个类的.同时把解决的问题答案共享出来供其他兄弟借鉴.