请教各位我在vc中写了一个dll文件,放到delphi中进行调用vc中dll源代码中函数定义的格式为int SendCmd1(char* strcmd),传递的参数是一个字符数组,标准的ASCI字符在delphi中调用方式为function SendCmd(StrCmd: Pchar):Integer; stdcall;delphi中函数为function SendCmd(StrCmd: Pchar)
  var
      StrCmd : Pchar;
      AckValue:Integer;
begin
      StrCmd := Pchar(rzedit1.Text);
      Ackvalue := SendCmd1(StrCmd);
      if ackvalue = 0 then
        begin
           处理一
        end;
      if AckValue = 1 then
        begin
             处理二;
        end
end;但在编译的时候说找不到动态链接库中函数的入口点,请大家帮忙分析原因,万分感谢大家

解决方案 »

  1.   

    function SendCmd(StrCmd: Pchar):Integer; stdcall; external 'xxx.dll' name 'xxx'
      

  2.   

    注意, vc编译的dll, stdcall调用方式的时候默认会改变其名字, 用dumpbin /export查看一下函数名究竟是什么
      

  3.   

    支持一个,顺便请问,如果只有DLL本身,如何调用其函数?
    呵呵,诚心求教了
      

  4.   

    首先用PE工具分析DLL的导出函数。
      

  5.   

    已经解决,原来是个非常低级的错误,调用函数的大小写在delphi与vc中不一致