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
[25131] COM 구조체 질문입니다.
홍환민.행복 [hhshhm] 718 읽음    2003-04-09 23:12
안녕하세요? 환민입니다.

그냥 C++로 작성했던 소스를 COM으로 옮기려고 하고 있습니다.
클래스의 경우는 인터페이스 정의하고, 그걸 상속받는 클래스를 만들고.. 하는 식으로 하는걸 알겠는데...

그 클래스의 멤버함수의 인자나 내부적으로 쓰이는 enum 형이나 구조체가 있습니다.

이런 구조체나 enum을 내부적으로만 사용된다면 그냥 소스에만 넣어넣고 컴파일해서 쓰면 되는데,
그게 함수의 인자로 COM 서버와 클라이언트 사이에 왔다 갔다 해야 하는 거라면
꼭 IDL로 작성을 해줘야 하는 건지요?
그리고 그렇게 IDL에 넣는 이유가 마샬링이나 그러한 루틴에서 처리가 되게 하려고 그런건지요?

맞다면, 구조체를 IDL로 작성해야 한다는건데요.
문제는 그 구조체 내의 필드에 포인터가 아닌
char name[255] 와 같은 것들이 있다는 겁니다.

저걸 IDL로 표현하려니까 안되네요... 어떻게 해야 하나요?
구조체 자체를 이용한 파일 입출력을 하기 때문에 구조체에 포인터로 된 필드가 없고
다 저런 식으로 배열로 되어 있습니다.
함수의 인자로 구조체 자체가 쓰입니다.

초보라 많이 헷깔려서리 주저리 질문했는데 자세히 답변해 주심 감사하겠네여 ^-^
행복하세요.



+ -

관련 글 리스트
25131 COM 구조체 질문입니다. 홍환민.행복 718 2003/04/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.