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
[45254] C++ Builder로 DLL만들고 Dll안의 Form을 MS VB에서 사용할때..
장성호 [nasilso] 1406 읽음    2006-06-09 18:55
VB로  Main Application을 만들고
BCB로 Dll을 만들어 사용합니다.

의문1

Dll안의 Form을 ShowModal() 되어있는 상태에서
taskbar 에서 다른 Application을 선택했다가   다시 VB Applicaton을 선택하면
Modal로 떠 있는 Form이 Active 되지 않고   VB  Main 폼이 Active 된것처럼 보입니다.

Modal로 떠있는  Form의 Caption이 active되어야 하는데...

원인이 뭐죠?


의문2

Dll에서 Form을 생성하고 Form Careate될때
Application의 메세지를  Form의 AppMessage함수에 걸리도록 코딩했습니다.

Application->OnMessage = AppMessage; 
// AppMessage는 Formxx::AppMessage(tagMSG &Msg, bool &Handled) 함수

이렇게 하면 Dll내에 있는 어떤 Form의 Event도 모두 AppMessage함수를  통과하는데...

Dll의   특정 Form의   ParentWindow를   VB 폼위에있는 Frame로 설정하면
Form1->ParentWindow= vbHwnd ;

ParentWindow가 VB의 Hwnd로 설정된 Form에서 발생하는 message는   AppMessage함수를 통과하지 않습니다.

왜그런지 알고십습니다.

Dll에서 Application 객체는 무엇을 의미하는지 궁금하구요
Dll에서  Application->Handle 을 VB의 핸들로 설정했을때  ::  Application->Handle = vbHwnd

전체  프로그램에서 발생하는 Message처리가 어떻게 되는 궁금합니다.

+ -

관련 글 리스트
45254 C++ Builder로 DLL만들고 Dll안의 Form을 MS VB에서 사용할때.. 장성호 1406 2006/06/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.