dll中声明了stdcall,
function Logon(AHandle: THandle; ACaption: PChar): boolean; stdcall;
function GetUserName:PChar; stdcall; //ShortString;
function GetPassword:PChar; stdcall;
function GetProject :PChar; stdcall;
而调用部分漏掉了
function Logon(AHandle: THandle; ACaption: PChar): Boolean; external 'LogonDll.dll' name 'Logon';
function GetUserName:PChar; external 'LogonDll.dll' name 'GetUserName';
function GetPassword:PChar; external 'LogonDll.dll' name 'GetPassword';
function GetProject:PChar; external 'LogonDll.dll' name 'GetProject';
呵呵,不能通过编译?你是指:
“[Hint] Project1.dpr(19): Value assigned to 'a' never used”
这个信息么?
如果是的话,这不叫做不能通过编译,编译通过了,这仅仅是个提示信息,意思是变量a被赋值后再没有使用过,因此此句被编译器优化时去掉了,最终不会编译到dll或者exe中。