delphi编写的dll中的函数如下:
function mydata(ASender: TObject; bytesTotal: Integer; out databuffer: pchar):integer; stdcall; external 'tpwork.dll';在delphi中正常调用,但在vb里,无法传入红色的那部分。在delphi中,那是一个TWinsock的ASender

解决方案 »

  1.   

    红色部分是传入一个object类型,objectl类型可以是任何类型,另外话说这问题应该到vb版问啊
      

  2.   

    就像Dim ASender As Object,至于这个object要看你的delphi函数里接受什么类型了在delphi中,那是一个TWinsock的ASender,那就是说传入的是一个socket类型呗这控件在vb里没有吧
    实在不行你试试tcpclient或者用api声明一个socket
      

  3.   

    这个好像可能性不太大,毕竟是两种机制,delphi里的对象在vb中是不太容易认得出的吧,最好是使用基本的数据类型
      

  4.   

    sonicer 说的是我最担心的。这个dll是delphi做的,与delphi做的exe 来回 传 TWinsock信息。在vb里调用,真的不行吗? 希望有高手出现指点一下呀!
      

  5.   

    从代码来看感觉他把socket控件自身传进去了,你的vb应该是没法用的,不过没看到代码也不能确定,Lz可以看一下,如果他使用api创建的socket你还有希望,否则改代码吧