Q&A

  • C 함수를 불러오는 방법은?
C함수를 델파이에서 불러오는 방법에 대해

아시는 분은 쫌 갈켜 주세요....

ㅋㅋㅋ

1  COMMENTS
  • Profile
    이채성 2000.11.21 22:01
    C Builder는 파스칼 유닛을 그냥 아무 생각없이 인클루드 해서 사용하는 데

    이는 씨빌더안에 파스칼 컴파일러가 내장되어 있어서 그런것 같습니다.

    델파이에서는 그렇게 하는 기능은 없는 것으로 보입니다.



    델파이에서 C 함수를 반드시 꼭 호출하고자 한다면 다음과 같은 방법을 사용하시기

    바랍니다.

    (혹자는 그냥 COM을 만들어서 사용하라구 하는데 적은 내용에 그렇게 까지 할 필요가

    있을까 생각합니다)



    우선 C를 C Builder에서 컴파일해서 obj파일을 만듭니다.

    그런다음



    다음과 같은 형식으로

    unit에 써 주시면 됩니다.



    {$LINK ddd.obj}

    {$LINK memset.obj}

    {$LINK strpbrk.obj}

    {$LINK memcpy.obj}



    procedure abc; stdcall; external;

    function ccc( pszMet : PChar; pszPref : PChar ): BOOL; stdcall; external;



    위에서 함수 abc와 ccc는 ddd.obj에 정의되어 있습니다.

    그런데 ddd.obj파일이 여러개의 obj를 참조하거든요 예를 들면 memset.obj등을요

    이렇게 필요한 것은 찾아서 써주시면 됩니다.



    이거 알아낼려구 2주일이상 고생했는데 막상 써놓구 보니까 몇줄 안되네요.. 후후..



    부디 성공하시기 바랍니다.



    이쁜이 wrote:

    > C함수를 델파이에서 불러오는 방법에 대해

    > 아시는 분은 쫌 갈켜 주세요....

    > ㅋㅋㅋ