영악한녀석 님이 쓰신 글 :
: 안녕하세요.
:
: 제가 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에 넣으셧나요
폼을넣지말고 클래스로 작성해보세요 폼이 비주얼이랑 안맞는거같아보여요