Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[11783] Re:[질문]C로 작성된 DLL을 델파이에서 선언하는데 문제 있습니다.
civilian [civilian] 1623 읽음    2008-02-28 16:34
int TTI_EncodeTSQ_Ex( const TTI_TSQ_Ex *  pTSQ_Ex,
                      byte *              encodedReq,
                      size_t *            encodedReqLen,
                      TTI_TransportFormat transportFormat );

function TTI_EncodeTWQ_Ex(pTWQ_Ex: TTI_TSQ_Ex;
                      encodedReq: PChar;
                      encodedReqLen: Integer;
                      transportFormat: TTI_TransportFormat): Integer;

물론 구조체도 델파이로 다 변환해야겠지요.
그리고 c의 .lib 파일은 델파이에서 직접 쓸 수 없으므로 DLL에서 함수를 끌어와야 합니다.

델파이에서 c의 struct 에 해당하는 것은

type
  TTI_TransportFormat = record
  end;

이런 형태로 변환하면 될거구요.

c의 enum은 다음과 같이 변환합니다.

typedef enum
{
    TTI_RAW  = 0,
    TTI_TCP  = 1,
    TTI_HTTP = 2,
    TTI_SMTP = 3
} TTI_TransportFormat;

type
  TTI_TransportFormat = (
    TTI_RAW,
    TTI_TCP,
    TTI_HTTP,
    TTI_SMTP
  );

XXX 로 물어보셨지만, 이해하기 편하도록 원 함수의 이름을 쓴점은 양해해주세요.

최병련 님이 쓰신 글 :
: C에서 선언된 DLL Function입니다.
:
: int XXX_XXXX( const XXX_Ex *  pTSQ_Ex,
:                       byte *                encodedReq,
:                       size_t *              encodedReqLen,
:                       XXX_TFormat     ttFormat );
:
: 델파이에서는 어찌 선언해야 합니까?
:
: 알려 주십시오..

+ -

관련 글 리스트
11782 [질문]C로 작성된 DLL을 델파이에서 선언하는데 문제 있습니다. 최병련 1469 2008/02/28
11783     Re:[질문]C로 작성된 DLL을 델파이에서 선언하는데 문제 있습니다. civilian 1623 2008/02/28
11785         감사합니다. 최병련 1660 2008/02/29
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.