我在vc中开发的动态库函数声明如下:
DWORD _stdcall HK_WriteFile
(
IN HANDLE hCard,
IN unsigned long ulOffset,
IN unsigned char *pucBuffer,
IN unsigned long ulBytesToWrite,
OUT unsigned long *pulBytesWritten
);
在Delphi中的对应申明如下:
function HK_WriteFile
(
hCard:Integer;
lOffset:LongWord;
var ptrData:PChar;
Len:LongWord; 
var lWrittenLen:LongWord
):Longword;stdcall;external 'MyAPI.dll';
在Delphi中的调用如下:
var
 lRet:LongWord;
 hCard:Integer;
 lOffset:LongWord;
 pstrInData:PChar;
 lLen:LongWord;
 lWrittenLen:LongWord;
Begin
   pstrInData:='Test for write file function';
   lLen:=Length(pstrInData);
   lWrittenLen:=lLen;
   lOffset:=0;
   lRet:= HK_WriteFile(hCard, lOffset, pstrInData, lLen, lWritten);
end;
结果我跟踪这个函数到vc的动态库中调试,结果发现,本来我在Delphi中传进来的是"Test for write file function",传入到vc函数中的参数中却变成了乱码,这是怎么回事呀?请问各位大虾!