delphi 5 写的DLL在VC中调用的问题(很急,请有空的帮忙看看),100分赠送了!
delphi写的DLL在VC中调用后,VC传入的PChar出现写冲突的错误,如何解决?
delphi中导出函数定义如下:
Procedure GetGuestFiscalInfo(RoomNo: PChar; var PrimaryAccount, GuestName: PChar;
var Amount: Double; var FiscalComments: PChar;
var ErrorCode, ErrorMessage: PChar);
然后VC中调用之
char szGuestName[256];
double fAmount;
char szFiscalComments[256];
char szErrorCode[3];
char szErrorMessage[256];
char m_szPrimaryAccount[11];
ext.m_GetGuestFiscalInfo("1", m_szPrimaryAccount
, szGuestName
, &fAmount
, szFiscalComments
, szErrorCode
, szErrorMessage); // 此句调用DLL的导出函数
运行过程中很正常,最后将会往szErrorCode和szErrorMessage这两个pChar写错误信息,但是就是在写入的时候出现了project faulted with message : 'access violation at xxxxx.exe: write of address 0xfdcdcdcd'.的错误啊。
各位大大请帮忙解决一下