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
[71023] Re:Re:DLL 관련 질문..
영악한녀석 [akrnldytpq] 3052 읽음    2014-03-14 10:10
aaaa 님이 쓰신 글 :
: 영악한녀석  님이 쓰신 글 :
: :  안녕하세요.
: :
: :  제가 C++ Builder 6.0에서 VCL을 사용한 DLL을 만들었습니다.
: :  TClientSocket, TTimer 등등.. 사용했습니다.
: :
: :  그리고 그렇게 만들어진 DLL에서 클래스를 뱉어내는 함수를 만들어서 사용하고 있습니다.
: :
: :  참조 : http://edn.embarcadero.com/article/20165
: :
: :  이 DLL이 C++ Builder에서는 문제 없이 작동 됩니다.
: :  하지만 Visual Studio 2103에서는 클래스는 잘 불러와지는데, 동작을 제대로 안하는게 문제입니다.
: :  TClientSocket의 Open 메소드가 호출해도 아무런 반응이 없습니다.
: :  Open 메소드 호출 후 Lookup 이벤트까지는 발생하였습니다만,
: :  그 이후의 이벤트들은 발생하지 않습니다.
: :  또 재밌는 부분은 TClientSocket의 Host, Port 같은 프로퍼티의 Get, Set은 아무런 문제가 없습니다.
: :  왜 이런걸까요?
: :
: :  혹, VCL을 사용한 DLL 라이브러리를 VC++에서 사용하는데 있어서
: :  유의해야 될 만한 것들이 있는지 선배님들께 조언좀 얻고자 합니다.
: :
: :  참고로 현재 호출 규약은 이벤트 메소드를 정의하는 영역을 제외하고 모두 __stdcall로 통일했습니다.
: :
: : 
:
: 비주얼이랑 빌더랑 방식이 엄연히 다르고 함수조차 약간다르고
: 지원하는 함수들이 다른뎅 비주얼에서 사용지 제대로될리가
: 만무하고요 dll도 빌더랑 비주얼이랑 파일형식이달라서
: 보통 비주얼에서만든  dll 파일을 빌더에쓰려면 컨버터로 변환해주어야
:  빌더에서 사용가능한 경우도 있기 때문이죠 아마도 폼을 dll에 넣으셧나요
: 폼을넣지말고 클래스로 작성해보세요 폼이 비주얼이랑 안맞는거같아보여요


답변 주신 글 잘 보았습니다. 감사합니다.
VC++ 과 BC++의 파일 포맷 차이는 정적라이브러리인 lib파일의 서식이 COFF와 OMF로 서로 다른걸로는 알고 있습니다.
근데 저는 lib파일을 사용하는 것이 아니라 dll파일을 명시적으로 로딩 후 사용하기 때문에 그 부분은 문제가 안됩니다.
감사합니다.

먼저 간단하게 서버와 TClientSokcet을 사용한 클라이언트 라이브러리를 만들어서 테스트를 해봐야 겠네요.


+ -

관련 글 리스트
71019 DLL 관련 질문.. 영악한녀석 2846 2014/03/13
71021     Re:DLL 관련 질문.. aaaa 2852 2014/03/13
71023         Re:Re:DLL 관련 질문.. 영악한녀석 3052 2014/03/14
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.