Q&A

  • dll의함수 호출관련..
안녕하세요...



델파이 시작한지 얼마되지않는... 진짜 초보자입니다...

다름이 아니오라...

제가 개발하구 있는 곳에서는 DB를 직접 억세스 하지 않구...

dll을 만들어서 서버프로그램이랑.. 데이타를 주고받기루 하였습니다...



그래서...

Visual C++로 짠 dll에 있는 함수를 호출하려구

유닉을 하나 만들었습니다...

그 유닉은 다음과 같아요..

unit Usedll;



interface



const

OMKAPI_SUCCESS = 1; //성공적으로 수행

OMKAPI_INFO = 0; // 성공적으로 수행되었음며 추가정보 검색가능

OMKAPI_FAILURE = -1; // 장애발생



function omk_login(host_address : pchar; user_id : pchar; password : pchar): integer; stdcall;



implementation



function omk_login(host_address : pchar; user_id : pchar; password : pchar): integer; stdcall; external 'omkapidll.dll';



end.



DLL명은 omkapidll.dll이구요...



글구 폼에서는



StrpCopy( a_id, PasswordDlg.Edit1.Text);

StrpCopy( a_passwd, PasswordDlg.Password.Text);

StrpCopy( a_host, '192.168.0.19');



// Dll함수 Call하기

Login_OK := omk_login(a_host, a_id, a_passwd);

이렇게 호출했습니다...



근데...

실행시키믄....프로그램시작오류로..

__.EXE파일이 손실된 엑스포트 OMKAPIDLL.DLL에연결되었습니다.omk_login



이렇게 나오구요...또 바로..

Unable to Create process:시스템에 부착된장치가 작동하지 않습니다하구 나옵니다...

도대체 머가 문제일까죠...



꼭 답변 부탁드려요...





1  COMMENTS
  • Profile
    김성중 2000.06.23 05:21
    //C++로 짠 DLL을 사용하려면 대소문자를 가려서 선언해야 합니다.



    혹시 대소문자를 고려하지 않았는지 모르겠네요?

    그리고 소스중에서 선언은 이부분

    function omk_login(host_address : pchar; user_id : pchar; password : pchar): integer; stdcall; external 'omkapidll.dll';

    을 선언만 하시면 됩니다.. 맞는지 모르겠네요?





    초보자 wrote:

    > 안녕하세요...

    >

    > 델파이 시작한지 얼마되지않는... 진짜 초보자입니다...

    > 다름이 아니오라...

    > 제가 개발하구 있는 곳에서는 DB를 직접 억세스 하지 않구...

    > dll을 만들어서 서버프로그램이랑.. 데이타를 주고받기루 하였습니다...

    >

    > 그래서...

    > Visual C++로 짠 dll에 있는 함수를 호출하려구

    > 유닉을 하나 만들었습니다...

    > 그 유닉은 다음과 같아요..

    > unit Usedll;

    >

    > interface

    >

    > const

    > OMKAPI_SUCCESS = 1; //성공적으로 수행

    > OMKAPI_INFO = 0; // 성공적으로 수행되었음며 추가정보 검색가능

    > OMKAPI_FAILURE = -1; // 장애발생

    >

    > function omk_login(host_address : pchar; user_id : pchar; password : pchar): integer; stdcall;

    >

    > implementation

    >

    > function omk_login(host_address : pchar; user_id : pchar; password : pchar): integer; stdcall; external 'omkapidll.dll';

    >

    > end.

    >

    > DLL명은 omkapidll.dll이구요...

    >

    > 글구 폼에서는

    >

    > StrpCopy( a_id, PasswordDlg.Edit1.Text);

    > StrpCopy( a_passwd, PasswordDlg.Password.Text);

    > StrpCopy( a_host, '192.168.0.19');

    >

    > // Dll함수 Call하기

    > Login_OK := omk_login(a_host, a_id, a_passwd);

    > 이렇게 호출했습니다...

    >

    > 근데...

    > 실행시키믄....프로그램시작오류로..

    > __.EXE파일이 손실된 엑스포트 OMKAPIDLL.DLL에연결되었습니다.omk_login

    >

    > 이렇게 나오구요...또 바로..

    > Unable to Create process:시스템에 부착된장치가 작동하지 않습니다하구 나옵니다...

    > 도대체 머가 문제일까죠...

    >

    > 꼭 답변 부탁드려요...

    >

    >

    • 이주승
    • 2000.06.22 23:56
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 송재영
      2000.06.23 03:27
      이주승 wrote: > 간단한 그림보기 프로그램을 하나 작성했습니다. > 윈도우즈의 탐색기 등에서 그림파일...
    • 까마귀
      2000.06.23 00:25
      용이사랑 wrote: > > > > * 델파이 인스톨하지 않고 응용 프로그램 실행시킬 방법이 있나요? ...
    • 최은석
    • 2000.06.22 22:49
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.06.22 23:31
      안녕하세요. 최용일입니다. 자료실에 보면 폼의 캡션을 스크롤하는 컴포넌트가 있습니다. 이 컴포넌트 ...
    • 초보자
    • 2000.06.22 22:47
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김성중
      2000.06.23 05:21
      //C++로 짠 DLL을 사용하려면 대소문자를 가려서 선언해야 합니다. 혹시 대소문자를 고려하지 않았는...
    • GeoBoy
    • 2000.06.22 22:26
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 초보자
      2000.06.22 22:31
      GeoBoy wrote: > StringGrid 컬럼 제목 Cell에 두줄로 제목을 넣고 싶습니다. > 라벨은 다음과 같이 하면...
    • 호야
    • 2000.06.22 22:21
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 초보자
      2000.06.22 22:33
      호야 wrote: > 우리회사는 프린터가 네트웍으로 연결되있습니다. > 프로그램을 실행시켜 프린트시키면 프...
    • 강민주
      2000.06.23 00:22
      이건 wrote: > 현재시간의 30분 전의 시간을 알아 내려면 어떻게 해야 하나요? > 안녕하세요. ^^ 예...
    • 영~
    • 2000.06.22 21:58
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 병부잡이
      2000.06.23 07:43
      영~ wrote: > 디비챠트에서 series의 값.. > (label과 bar값을 실행시에 동적으로 변화시켜줄려고 하...
    • 성호종
      2000.07.04 02:31
      감자녀 wrote: 아래 메세지 띠우는 방법을 알려드리지요. 일단 AccessViolation Error는 프로그래머가 사...
    • 감자녀
      2000.07.14 05:50
      답변에 감사드립니다. 이제야 보게 되었네요. 그리고 메모리 확보를 하지 않은 상태에서 메모리를 건드린...
    • ~(%:>
    • 2000.06.22 21:09
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.06.22 22:04
      ~(%:> wrote: > > > 델파이에 인스톨쉴드가 포함되어 있다구 하는디엽 어디에 있나엽 ㅠ.ㅠ ...
    • ~(%:>
      2000.06.22 22:37
      조규춘 wrote: > ~(%:> wrote: > > > > > > 델파이에 인스톨쉴드가 포함되어 있다구 하는디엽 어...
    • 조규춘
      2000.06.23 00:13
      http://www.installshield.com/express
    • 병부잡이
      2000.06.23 05:56
      오라클스토어 프로시져에서는 select into문만 사용하실 수 있습니다 해서 조회를 위한 쿼리는 보통 스토...
    • 성호종
      2000.07.04 02:33
      병부잡이 wrote: 당근 되지요... parameter 를 선언해서 그 파라메터를 기준값으로 select fieldA, field...
    • 원영준
    • 2000.06.22 20:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 초보자
      2000.06.22 22:36
      원영준 wrote: > mainform에서 한번만 DB연결을 설정하고 각 DLL의 form에서 TQuery를 이용하여 DB에 접근...
    • 최용일
      2000.06.22 23:28
      델파이걸 wrote: > (지금 델파이 책이 없어서 찾아볼수가 없어요. 좀전에 OPEndialog 문제 지금 생각하니....
    • 최용일
      2000.06.22 21:23
      안녕하세요. 최용일입니다. 흠~ 쉬운 질문이 아니네요... 몇가지 방법이 있겠는데 그냥 설명만 해드...
    • 원영준
    • 2000.06.22 20:26
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 원영준
      2000.06.22 20:38
      흐미 이래 간단한걸 한나절 고생했네 쩝... 감사 합니다.
    • 까마귀
      2000.06.22 20:35
      원영준 wrote: > i : integer; > > i := 5; > > format('%5d',[i]); -> 결과 ' 5'처럼 앞에 공...
    • 최용일
      2000.06.22 20:33
      안녕하세요. 최용일입니다. 먼저 검색을 활용하세요. 수없이 많은 답변이 있는 내용입니다. Format('...
    • 최석기
      2000.06.22 20:14
      델파이걸 wrote: > 안녕하세요..비가 오네요...음....기분이 싱숭생숭해서리... > > 제가 드릴질문은요...
    • 델파이걸
      2000.06.22 20:19
      최석기 wrote: > > 차라리 그런 기능이라면 Dialog Box를 하나 만들어서 사용하시는게.. 안녕하세요....
    • 최용일
      2000.06.22 20:26
      안녕하세요. 최용일입니다. 옵션에서 멀티셀렉트를 설정하여 파일 이름을 한꺼번에 받으시면 되지않나요...
    • 최용일
      2000.06.22 20:08
      안녕하세요. 최용일입니다. 프로퍼티의 Default는 폼파일(.dfm)에 저장되는냐 저장되지 않느냐를 결정할...
    • 김일영
      2000.06.22 19:53
      아 그렇습니까? 이럴수가 T.T 대단히 감사합니다. 최용일님 덕분에 큰 도움 되었습니다. 번번히 도움만 ...
    • jody
    • 2000.06.22 19:40
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 병규
      2000.06.22 19:55
      안녕하세요 글을 읽어보니 소켓프로그래밍은 뒷문제인거 같군요. 더 중요한것은 신용카드 승인문제 인거 같...
    • jody
      2000.06.22 22:24
      병규 wrote: > 안녕하세요 글을 읽어보니 소켓프로그래밍은 뒷문제인거 같군요. 더 중요한것은 신용카드 ...
    • halight
    • 2000.06.22 19:27
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최석기
      2000.06.22 20:12
      halight wrote: > 안녕하세요... > 해상도에 구애받지 않게 실행을 해야 하는데요. 가령 800*600으로 화...