dll应该没问题的,因为我在vc编的程序里面可以调用。但是在delphi中调用则出现了问题
我调用的方法是:implementation
function aaa():integer; stdcall;external 'mydll.dll';声明函数之后,然后直接在程序中运行函数aaa;但是系统提示:“无法定位程序输入点aaa于动态连接库mydll.dll上”在线等。谢谢了

解决方案 »

  1.   

    将mydll.dll放在当前主文件夹下
      

  2.   

    是不是你的DLL里面没有导出这个函数?
      

  3.   

    试试把VC中的导出函数指定为__stdcall格式
      

  4.   

    比较通用的方法是前缀extern"C"告诉编译器强制声明为C函数,加上__declspec(dllexport)修饰,使用_stdcall作为调用约定~~~,在DEF档中输出函数名当然也可以直接在DEF档中或使用连结指引做函数名转换,不过你需要知道不同情况下产生的实际函数名是什么,比如你上面的函数在编译后的实际函数名为 _aaa@0, 0为参数的大小.当然你愿意直接使用这个函数名也没问题,呵呵
      

  5.   

    我的文件名是mydll 楼上说的def档中输出函数名,是不是就是在文件mydll.def中加入申明,请问如何添加。谢谢
      

  6.   

    EXPORTS
        aaa