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
[42368] 자답: ATL(ActvieX Library, nonUI)에서 Param읽어오기
정용훈 [] 1688 읽음    2005-11-05 05:23
정말 쉽게 해결되니까 허무하군요..
자세히는 모르겠는데 ui가 들어있는 comobject일경우 CComControlBase를
상속 받던데 IPersistPropertyBagImpl이 CComControlBase의 몇몇 변수를 사용
하던것 같습니다. 딱 두개이던데 별 의미 없는 내용이서 그냥 클래스에 선언해버리니까
되는군요.
    unsigned m_bRequiresSave:1;
    SIZE m_sizeExtent;  //current extents in himetric
이거 두개만 넣어 주면 잘됩니다.

class ATL_NO_VTABLE TTestComImpl :
  public CComObjectRootEx<CComSingleThreadModel>,
  public CComCoClass<TTestComImpl, &CLSID_TestCom>,
  public IPersistPropertyBagImpl<TTestComImpl>,
  public TEvents_TestCom<TTestComImpl>,
  public IDispatchImpl<ITestCom, &IID_ITestCom, &LIBID_Project1>,
  public IObjectSafetyImpl<TTestComImpl, INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA>
{
...
public:
    unsigned m_bRequiresSave:1;
    SIZE m_sizeExtent;  //current extents in himetric

이렇게 하면 잘됩니다.
그냥 ActiveX Form으로 하면 되지만 불필요한것이 좀 줄어서
조금 용량이 주는군요.

[C++ Error] atlcom.h(885): E2451 Undefined symbol 'GetPropertyMap'
에러는
BEGIN_PROPERTY_MAP(TTestComImpl)
END_PROPERTY_MAP()
이걸 넣어주지 않았을때 나는 에러 였군요.
그냥 주석걸고 테스트 하다보니..
역시 기본이 안되니까 힘들군요.

정용훈 님이 쓰신 글 :
: 안녕하세요.
:
: ActiveX Library에서 Param html태그를 가져오게 만들려고 합니다.
: Actvie Form은 잘되는데 ActvieX Library에선 IPersistPropertyBagImpl
: 을 추가하면 아래와 같은 에러가 납니다.
:
: [C++ Error] atlcom.h(885): E2451 Undefined symbol 'GetPropertyMap'
:
: 제가 작업한 순서는
: 1. ActvieX Libary 프로젝트 추가
: 2. Com Object 추가
:
: class ATL_NO_VTABLE TTestComImpl :
: ...
:   public IPersistPropertyBagImpl<TTestComImpl>,
: ...

+ -

관련 글 리스트
42348 ATL(ActvieX Library)에서 Param읽어오기 정용훈 1213 2005/11/03
42368     자답: ATL(ActvieX Library, nonUI)에서 Param읽어오기 정용훈 1688 2005/11/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.