C++builder
=================================================================================
typedef void (__stdcall * _TEST_PRINT)(const char *AFileName); // delphi function
...
AnsiString FilePath ="XXX.jpg";
//TESTPRINT.dll , LoadLibrary..
TEST_PRINT(FilePath.c_str()); // char * 전달
...
delphi 소스
=================================================================================
procedure TEST_PRINT(AFileName: PChar);stdcall;
var
strData : String;
begin
strData := AFileName;
ShowMessage(strData); // 문자열이 깨집니다.
with TForm1.Create(nil) do
try
CnsDMTable1.Clear;
try
CnsDMTable1.LoadFromFile(AFilename, true); //문자열이 깨져서 파일이 로드 되지 않습니다.
except
on e: Exception do
CnsDMTable1.ImportImage(AFilename)
end;
DicomMultiViewer1.Update;
finally
Free;
end;
end;
델파이를 잘몰라서 문의 드립니다.
C++builder에서 문자열을 델파이로 전달하려면 그리도 델파이에서 C++builder 문자열을 받을때 어떻게 해야하나요
|