Microsoft MVP성태의 닷넷 이야기
Attribute를 이용한 COM 구현 시 interface의 상속 [링크 복사], [링크+제목 복사],
조회: 12714
글쓴 사람
이승기 (skinu at paran.com)
홈페이지
첨부 파일
 

안녕하세요.
VS 2005 를 이용해서 COM을 작성하고 있습니다.
IDL 파일을 별도로 작성하지 않고 Attribute를 이용해 인터페이스를 정의할 때,
다른 컴포넌트의 인터페이스를 상속받는 작업을 어떻게 수행하는지에 대해
알고 싶습니다.
여러 모로 시도해 봤는데 잘 안 되더군요.
일단 저는 아래와 같이 해 봤는데요,

[importlib ("XXX.tlb")];

[
    object,
    uuid(048EF6D1-6384-4827-8EEA-5475A676FF88),
    dual,
    helpstring("IBInterface"),
   pointer_default(unique)
]
__interface IBInterface : public IAInterface // IAInterface는 XXX.tlb에 정의된 인터페이스입니당.
{
....
};

IAInterface가 정의되어 있지 않다는 컴파일 오류가 나와 더 이상 진행할 수 없었습니다.

위와 같이 작업하는 것이 가능할까요? 가능하다면 어떤 식으로 할 수 있는지 알려 주시면 감사하겠습니다.
나름대로 많은 시간동안 여러 가지 시도를 해 보았지만, 잘 안 되었습니다.

Attribute를 이용한 COM 구현에 대해 좀 더 깊이 있는 학습을 할 수 있는 방법에 대한 조언도 부탁합니다.
그럼 답변 기대하겠습니다. 수고하십시오.








[최초 등록일: ]
[최종 수정일: 9/25/2006]


비밀번호

댓글 작성자
 



2006-09-26 10시57분
죄송하지만, 개인적으로 attribute 를 이용한 ATL COM 제작은 제외시킨 상태입니다. 그 부분으로는 왠지 건드리고 싶지 않군요. ^^; (참고로, 이런 류의 질문에는 아주 아주 간소화된 예제 프로젝트 - 누구나 한번 다운로드 받아서 바로 테스트를 시행해 볼 수 있는. - 를 올려주시면 답변을 해줄 상대방이 무척 고마워하면서 답변을 해드린답니다. ^^ )
kevin25

NoWriterDateCnt.TitleFile(s)