정리 해서 다시 올립니다.
dll의 c source가 아래와 같이 되어 있습니다.
int __export __stdcall MBOX_Connection(void);
int __export __stdcall Read_PSN(char* psn);
int __export __stdcall MBOX_Terminate (void);
이걸 delphi에서 dll 호출하여 사용해야 하는데, 잘 안됩니다.
Function Read_psn(Psn : pchar) : integer; stdcall; external 'C:\Sample1\MTI_PSNRead.dll';
function MBOX_Connection() : Integer; stdcall; external 'C:\Sample1\MTI_PSNRead.dll';
function MBOX_Terminate() : Integer; stdcall; external 'C:\Sample1\MTI_PSNRead.dll';
와 같이 선언하고,
procedure TForm1.Button1Click(Sender: TObject);
var
a:integer;
strTemp : pchar;
begin
a:= Mbox_connection;
a:= read_psn(strTemp);
a:= Mbox_terminate;
end;
이렇게 실행하는데,
"프로세스 시작시점 read_psn을 dll c:\sample1\mti_psnread.dll에서 찾을수 없습니다." 라는 error가 뜨는군요..
도무지 어케 해야 할지.. 원참... 누구 아시는 분 꼭 좀 도와주세요..
C는 대소문자를 구분합니다.
델파이에서 선언한 함수는 Read_PSN에서 psn이 소문자네요.. 확인해보세요...
^^ 항상 즐코하세요...