Q&A

  • dll 오류...
안녕하세요 ~

지금 델파이 초급자로 공부중에 있는 사람입니다 ^^

제가 umain이란 유닛에 dll파일을 호출해서 dll파일내에 있는 함수를 사용하는 프로그램을 작성하고 있는데 쉽지만은 않네요...

우선은 dll파일 호출 구문입니다.

<!--CodeS-->
procedure x_Init(Mode : integer);far;stdcall;external 'DvrCtrl.dll' name 'x_Init';
<!--CodeE-->

여기까지는 문제가 없는데 버튼클릭 이벤트 안에서 함수를 사용시 자꾸 에러가 납니다..
<!--CodeS-->
Procedure Tform5.btID(sender : TObject );
var
nBoardType : integer;

m_iBdCnt : integer
nReturn : integer;
begin
nBoardType := 0;

m_iBdCnt :=0;
x_Init(nBoardType, m_iBdCnt);

nReturn := x_Init(nBoardType, m_iBdCnt);
  begin
  case nReturn of
  1 : MessageDlg('encoder, decoder setting failed',mtError, [mbOk], 0);
  2 : MessageDlg('Fail to initialize device driver',mtError, [mbOk], 0);
  3 : MessageDlg('General error occured internally',mtError, [mbOk], 0);
  4 : MessageDlg('Company code verification failed',mtError, [mbOk], 0);
  5 : MessageDlg('Different H/W version of board',mtError, [mbOk], 0);
  0 :
        begin
        showMessage('Initialization되었습니다');
        BtIn.Enabled := false;
        EdCode.Enabled := false;
        ComboID.Enabled := false;
        ComCount.Enabled := false;

        end;

        end;
end;
<!--CodeE-->

에러 내용은

[Error] uMain.pas(286): E2010 Incompatible types: 'Integer' and 'procedure, untyped pointer or untyped parameter'

제 생각에 인자 갯수하고 리턴 값 선언하는 함수호출문에서 잘못한것 같긴 한데 어떻게 하는건지는 모르겠네요 ㅠㅠ 답변 좀 주신다면 감사 ㅠㅠ
0  COMMENTS