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

C++빌더 Q&A
C++Builder Programming Q&A
[26907] Re:Dll 파일을 사용할 때 외부 함수 선언 방법은 어떻게 되나요..
꼴.시크릿 [kkol] 1311 읽음    2003-08-25 23:31
//---------------------------------------
int WINAPI lockinit(int op1);


int lock_init(int op1)
{
    int result;
    op1=(op1+AD_INIT)*EN_INIT;
    result = lockinit(op1);  <---- 에러가 발생한 위치 , 위에 선언만 되어 있고 정의가 없음
    result = (result/EN_INIT)-AD_INIT;

    return (result);
}

이 소스가 문제입니다.
에러 내용 그대로 lockinit은 선언만 되었지 함수 정의가 없습니다.
lockinit과 lock_init 이란 함수를 사용했는데..
같은 함수 이름으로 사용하려다가 실수를 한게 아닌가 하는 의심이 드는군요
정상적인 경우라면 under bar '_'만 중간에 들어가 있는 함수를 따로 만드는 일은 없을테니까요
그게 아니라면 lockinit이란 함수가 없으니 에러가 뜨는건 당연합니다.
lockinit함수 정의를 하시지요..

에러 뜨는 위치는 표시한 부분과 같습니다.

그런데.. 둘다 lock_init이란 함수를 사용한거라면 재귀 호출을 사용한건가요?
함수 자체가 어떤 기능을 하는지 설명이 안되 있기 때문에 더이상 답변드리기는 힘듭니다.




이종현 님이 쓰신 글 :
: 안녕하세요^^
: Dll 파일을 사용 하려면..
: 외부 함수를 선언 해야 한다고 하는데 어떻게 해야 하나요...
: 지금 제가한 것에는 아래와 같은 에러가나와서요...
: [Linker Error] Unresolved external '__stdcall lockinit(int)' referenced from C:\DOCUMENTS AND SETTINGS\ISTON\바탕 화면\LACK01\LACK.OBJ
:
: 그리고 소스는 아래와 같습니다. 그리고 제가 만든 파일을 첨부 하겠습니다.
:
: //---------------------------------------------------------------------------
:
: #include <vcl.h>
: #pragma hdrstop
:
: #include "LACK.h"
: //---------------------------------------------------------------------------
: #pragma package(smart_init)
: #pragma resource "*.dfm"
: TForm1 *Form1;
: //---------------------------------------
: int WINAPI lockinit(int op1);
:
:
: int lock_init(int op1)
: {
:     int result;
:     op1=(op1+AD_INIT)*EN_INIT;
:     result = lockinit(op1);
:     result = (result/EN_INIT)-AD_INIT;
:
:     return (result);
: }
: //---------------------------------------------------------------------------
: __fastcall TForm1::TForm1(TComponent* Owner)
:         : TForm(Owner)
: {
: }
: //---------------------------------------------------------------------------
:
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
:     int rv;
:     char szTemp[256];
:     unsigned char i, j;
:
:    //____________lock_init() ____   // usb 전용의 경우 0x3ff
:     rv=lock_init(0); //usb,printer port 겸용
:
:     if(rv == 0)
:     {
:             ShowMessage("하드웨어 락키가 없습니다");
:     }else{
:             ShowMessage("하드웨어 락키가 있습니다");
:         }
: }
: //---------------------------------------------------------------------------
:
:
: void __fastcall TForm1::Button2Click(TObject *Sender)
: {
:             Close();
: }
: //---------------------------------------------------------------------------
:

+ -

관련 글 리스트
26897 Dll 파일을 사용할 때 외부 함수 선언 방법은 어떻게 되나요.. 이종현 1193 2003/08/25
33219     Re:Dll 파일을 사용할 때 외부 함수 선언 방법은 어떻게 되나요.. 이종현 1145 2003/08/25
33218     Re:Dll 파일을 사용할 때 외부 함수 선언 방법은 어떻게 되나요.. smleelms 1074 2003/08/25
26907     Re:Dll 파일을 사용할 때 외부 함수 선언 방법은 어떻게 되나요.. 꼴.시크릿 1311 2003/08/25
26913         Re:Re:Dll 파일을 사용할 때 외부 함수 선언 방법은 어떻게 되나요.. 이종현 1453 2003/08/26
33217             Re:Re:Re:Dll 파일을 사용할 때 외부 함수 선언 방법은 어떻게 되나요.. smleelms 1099 2003/08/26
33216             Re:Re:Re:Dll 파일을 사용할 때 외부 함수 선언 방법은 어떻게 되나요.. smleelms 1079 2003/08/26
26917             Re:Re:Re:Dll 파일을 사용할 때 외부 함수 선언 방법은 어떻게 되나요.. 꼴.시크릿 1165 2003/08/26
26934                 Re:Re:Re:Re:답변 감사합니다. 그리고 모두들 행복하세요..^^ [냉무] 이종현 997 2003/08/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.