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
[40315] 해결했습니다 ^-----^
황경록 [mpbox] 1093 읽음    2005-05-26 14:05
이휴;;; 무식이 죄죠 ^^:::::::

Objective 는 VC++ Application 에서 C++ Builder 로 만든 DLL 의 함수를 호출하는데
DLL 의 폼이 TaskBar 에 표시되지 않게 하는 것입니다.

이것 역시 구글형님에게 배웠습니다만 ^-^

VC++ 에서 작성한 윈도우의 Handle 을 적당히 DLL 로 넘기고 DLL 을 동적으로 생성하기 이전에
DLL 의 Application 객체의 Handle 에 덮어 씌어 주면 됩니다.

지금 막 테스트 해봤는데 아주 깔끔하게 잘 되는군요 ^^

Application->Handle = g_hParent;

TForm1* pF1 = new TForm1(NULL);

pF1->ShowModal();

좋은 아이디어 제공에 감사드리고 이번기회에 또 구글형님에게도 감사드립니다. ^^...

황경록 님이 쓰신 글 :
: dynamic_cast<TWinControl*>(this->Parent)->ParentWindow = hwnd;
:
: 이런식으로 해도 가능하지 않을까요? ^^:::
:
: ----
:
: 아참~ VC 에서 C++ Builder에서 만든 DLL 을 사용하는 간단한 예제를 만들어서 올려주실수 있으신가요? ^^::::: 저도 곧 필요할 거 같아서요;;; ^^
:
: 박영목 님이 쓰신 글 :
: : 이리저리 헤메고 방황하다. 찾았는데...
: :
: :  자식으로 만드는 것은 간단하군요... WIN API 함수를 사용하면 ...
: :
: :   frm = new TForm1( NULL );
: :   ::SetParent( frm->Handle, hwnd );  //hwnd는 VC++에서 넘긴 Handle
: :
: :  -------------------------------------------------------------
: :
: :   그런데 Dialog(Form) 뜨는 것은 HINSTANCE 와 관계가 있는 것 같습니다.
: :
: :   자식하고는 아무 관계가 없다. DLL도 독립적인 Instance를 갖고 있다.
: :   그래서 DLL에 있는 Form을 호출하면 TASKBAR에 프로그램이 하나 새로 생기는 것을 봅니다.
: :
: :   그런데.... *.lib 파일로 include해서 만든 프로그램은 TASKBAR에 만들지 않고
: :   정말 그냥 폼에서 ShowModal()한 것처럼 잘 뜨는 것을 볼 때....
: :   이 방식으로 하면 HINSTANCE를 같은 것으로 잡는 것이 아닌가 생각합니다.  그냥 느낌... 
: :
: :   DLL 사용법에  명시적, 묵시적(암시적) 하던데... 저는 용어에 약해서..... ㅋㅋㅋ
: :
: :   이것을 어떻게 해결하나.... 꼭 하고 싶은데.... 미치도록 하고 싶은데.....
: :
: :   CBuilder에서 만든 DLL을 사용할 수 있게 VC++ 사용할 수 있게. *.lib 파일 만들 수 있는
: :
: :   방법이 없다는 것인가?   흐흑~~....            Help me!

+ -

관련 글 리스트
40291 [질문]TForm( TComponent* )을 TForm( HWND )로 생성할 수 있는 방법??? 박영목 991 2005/05/24
40304     Re:[질문]TForm( TComponent* )을 TForm( HWND )로 생성할 수 있는 방법??? 박영목 1231 2005/05/25
40308         Re:Re:[질문]TForm( TComponent* )을 TForm( HWND )로 생성할 수 있는 방법??? 황경록 1142 2005/05/25
40315             해결했습니다 ^-----^ 황경록 1093 2005/05/26
40300     Re: 어 이게 아닌데..... 뭔가 잘못 된 것 같습니다. 박영목 850 2005/05/25
40295     [자답] 와우~~~~ 이럴 수가???? 발견했다 !!!! 이게 가능한가? HWND -> TComponent 박영목 1121 2005/05/24
40296         Re:[자답] 와우~~~~ 이럴 수가???? 발견했다 !!!! 이게 가능한가? HWND -> TComponent 황경록 1004 2005/05/25
40298             Re:Re:[자답] 와우~~~~ 이럴 수가???? 발견했다 !!!! 이게 가능한가? HWND -> TComponent 박영목 886 2005/05/25
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.