现在有个VB程序,其中调用了一个DLL(a.dll),不知道该DLL是用什么语言编写的(很有可能是C或VC写的),也没有该DLL中接口函数的具体定义。所以我只能根据这个VB调用DLL的程序来瞎琢磨。现在需要把该DLL放在Delphi中调用,不知道如何调用?普通的在Delphi中调用DLL的我都知道的,但就是这个就是不能成功。
VB调用的代码:
  定义部分:
  Declare Function AutoLink Lib "a.dll" (Port As Long) As Long
  调用部分:
  Dim Port As Long
        
  status = AutoLink(Port)
-------------------------------
请哪位有经验的大侠帮助俺一下!谢谢了。

解决方案 »

  1.   

    应该是
    function AutoLink(Port: integer): integer; stdcall; external 'a.dll';
    如果不行,把Stdcall改为cdecl试试
      

  2.   

    你可以用DumpBin(Visual C++自带工具)来查看这个Dll输出函数的定义,然后再调用。
      

  3.   

    function AutoLink(Port: integer): integer; stdcall; external 'a.dll';基本格式就是这样另外还有一个就是像应用单元一样,那么用delphi的声明格式声明函数
    然后直接就像引用单元一样实现函数的调用
      

  4.   

    调用楼上说的应该没有什么问题了。
    想看.dll源码的话就用VC++的工具看
      

  5.   

    一楼的我是试过的。我开始调用时就是这么调用的,不过没有用cdecl试过。
      

  6.   

    function AutoLink(Port: integer): integer; stdcall; external 'a.dll';
    这样写的话,要和程序在同一个路径下