IDL을 만들 때 BSTR은 맨 밑에 넣어야겠다.
/* 클립의 정보 */
typedef
[
uuid(EF3FE671-8813-4da7-962C-17C225AE2D4E),
version(1.0)
]
struct tagdkClipInfo {
BSTR bstrFilename; /* 스트림의 파일명 */
dkInt nStream; /* 스트림 번호 */
dkItemType itemtype; /* 스트림 타입 */
dkTime nStreamDuration;
} dkClipInfo;
이렇게 했었는데 맨 뒤에 nStreamDuration에 이상한 값이 넘어온다거나 하는 문제가 있었다. 같은 C++끼리는 괜찮았는데 C++로 만든 COM을 델파이에서 쓸 떄는 문제가 생겼다. 그래서 저 bstrFilename을 스트럭쳐의 맨 뒤로 옮겼더니 문제가 해결되었다.
'프로그래밍 > VC++' 카테고리의 다른 글
VC++ .Net 2003 에서 iostream.h 가 incude 되지 않는다? (0) | 2006.09.02 |
---|---|
activex를 dialog base처럼 만드는법 (0) | 2006.08.28 |
ActiveX 콘트롤안에 있는 CEdit에서 백스페이스가 안먹힐때. (0) | 2006.08.28 |
OLE Drag & Drop 하기 (0) | 2006.08.18 |
3중포인터 - Struct의 동적배열을 인자로 넘기다 (0) | 2006.06.22 |