제가 Dll을 한번도 사용해보지 못해서 질문드립니다.
제가 관련업체에서 Dll파일을 하나 받았는데
그것을 콜하고, 반환값을 받는 형식이거든요.
그런데 제가 책보고 나름대로 해보았는데
"프로시저 시작 지점 SendFax을(를) DLL Send_Fax.dll에서
찾을 수 없습니다." 란 에러가 납니다.
좀 도와주세요!!!
- 업체에서 보낸 DLL 설명서
=====================================================
extern "C"
__declspec(dllexport) LONG __stdcall
SendFax( LPSTR lpszUserID,
LPSTR lpszPassword,
LPSTR lpszFilePath1,
LPSTR lpszFilePath2,
BOOL bMode )
<Input>
lpszUserID : 사용자 ID
lpszPassword : 사용자 암호
lpszFilePath1 : Fax 번호 또는 동보전송 목록 파일 Path
lpszFilePath2 : 첨부 파일 Path
bMode : TRUE
<Output>
0 : Error 발생 (GetErrorCode() 함수를 사용한다)
1 : 성공
사용 예 )
SendFax('faxwide', 'faxwide', '8227294934', 'C:test.doc', True)
=====================================================
- 제가 작성한 코드
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
function SendFax(lpszUserID: String;
lpszPassword: String;
lpszFilePath1: String;
lpszFilePath2: String;
bMode: Boolean
):Integer; stdcall; external 'Send_Fax.dll'
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
if SendFax('id', 'password', '8227294934', 'C:test.doc', True) = 1 then
Showmessage('dll 테스트 성공');
end;
end.
타언어로 작성된 Dll사용은.. 델파이에서 프로젝트-임포트타입라이브러리에 등록 시켜주고...레지스터에 등록시킨다음 콤포넌트처럼 사용했던적이 있습니다.
SMS관련 Dll을 사용해봤거든요...