我用vc了一个 .dll,用vc调用已经成功了.
我想用delphi调用该.dll文件.编译成功了
就是在运行是出现 Access violation 也查了些网上的文章说是指针的问题
或是类型不匹配.但我就是查不出毛病.请各位高手指点小弟一二.vc下定义的输出函数:
int TimeDelay(unsigned long n)delphi 下的引用:
var
  Form1: TForm1;
  a : integer;
  n : Cardinal;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
        n:=13;
        a:=TimeDelay(n);//就是这步出问题

解决方案 »

  1.   

    对不起刚才少贴了点东西
    function TimeDelay(n : Cardinal):integer;stdcall;external 'TDelay2.dll';
      

  2.   

    对dll的引用正确?是不是没有正确的引入这一个dll中的函数啊?
      

  3.   

    “是不是没有正确的引入这一个dll中的函数啊”]这句话什么意思?能不能说的具体一点
      

  4.   

    请问如何才能正确引入dll
    我如何知道它是否被引入急.......
      

  5.   

    我也知道
    但是我就是查不出问题在那里我要调用的函数只有以个参数 unsigned long n,我在delphi 下把它定义为Cardinal
    因为他们都是32位的 无符号数,
    还有就是 函数的返回值 int ,我在delphi下把它定义为integer然后就没有参数传递了.