Microsoft MVP성태의 닷넷 이야기
COM 객체의 타입 변경 [링크 복사], [링크+제목 복사],
조회: 11042
글쓴 사람
임동찬 (dngchn.im at samsung.com)
홈페이지
첨부 파일
 

COM 사용 관련하여 질문 있습니다.
COM 라이브러리를 이용하여 결과로 넘겨받은 객체(object 타입임)를 처리하는데 있어서 방법을 모르겠네요.
관련된 C++ 코드는 다음과 같습니다.
if (NULL == pIUnknownEnum) //pIUnknownEnum이 넘겨받은 결과 객체를 가리키는 포인터 임.
      throw E_FAIL;
    if (FAILED(pIUnknownEnum->QueryInterface(IID_IEnumString, (void**)&pIEnumString_ID))) //QueryInterface를 사용함.
      throw E_FAIL;
    if (NULL == pIEnumString_ID)
      throw E_FAIL;
    if (FAILED(pIEnumString_ID->Reset()))
      throw E_FAIL;

    // Iterating all of Providers ID
    while(S_OK == pIEnumString_ID->Next(1, &wszCurrentString, &dwFetched))
    { //...반복문을 통해 처리 함.

위와 같은 논리를 C#에서 구현하는데, 결과 object를 List<string>이나, string[]으로 cast하니 당연히(?) 안됩니다.
방법 없을까요?








[최초 등록일: ]
[최종 수정일: 8/17/2010]


비밀번호

댓글 작성자
 



2010-08-17 11시04분
pIUnknownEnum 인터페이스 포인터 값을 C# 에서 적절하게 제어하려면 System.Runtime.InteropServices.ComTypes.IEnumString 으로 형변환해 주시면 됩니다. 형변환 후의 로직은 IEnumString.Next 메서드를 이용해서 열람해 주시면 됩니다. ^^
kevin25

... 76  77  78  79  [80]  81  82  83  84  85  86  87  88  89  90  ...
NoWriterDateCnt.TitleFile(s)
464정윤수9/22/20069429asp.net 에서 DataSet 을 RecordSet 으로 변환 [2]
463sagi...9/22/20068533IE 제어 (BHO) 중 데이터 형에 질문 드립니다. [1]
462[손님]9/21/20069454ASP.NET 에서 COM+ 호출시 프로그램 구조를 어떻게 만들어야 할지...조언 부탁합니다. [2]파일 다운로드1
461정태운9/19/20069526Vista RC1에서 XPS Document를 Image로 변환하는 코드의 특정 API 가 동작하지 않습니다. [2]
459이방은9/14/20068356축하합니다.. [1]
458이승용9/7/20069345스마트 클라이언트 관련 질문입니다. [4]
456guest9/7/20069143데이타셋 암호화 방법...이 있을까요? [2]
451임은주8/31/20068949mms 스트림을 로컬 파일로 저장해주는 프로그램 에 대해서 여쭤볼께요 [1]
448guest8/28/20069258서버인증서및클라이언트인증서 발급
449정성태8/28/20069116    답변글 [답변]: 서버인증서및클라이언트인증서 발급
450ligh...8/29/20069131        답변글 [답변]: [답변]: 서버인증서및클라이언트인증서 발급 [3]
468light9/28/20069440            답변글 [답변]: [답변]: [답변]: 서버인증서및클라이언트인증서 발급
472정성태10/5/20069827    답변글 [답변]: 서버 인증서 및 클라이언트 인증서 발급
475ligh...10/11/20068582        답변글 [답변]: [답변]: 서버인증서및클라이언트인증서 발급
446윤경재8/20/200613794COM+ 프로젝트 디버깅 방법. [2]파일 다운로드1
442이남호8/7/20069379스마트클라이언트에 Farpoint Winform을 이용했는데 배포가 안되요.
443이남호8/7/200611472    답변글 [답변]: 스마트클라이언트에 Farpoint Winform을 이용했는데 배포가 안되요.
441강혜영8/5/200610416SHDocVw를 이용한 익스플로어 제어
444정성태8/7/20068847    답변글 [답변]: SHDocVw를 이용한 익스플로어 제어
445강혜영8/8/20069496        답변글 [답변]: [질문]: SHDocVw를 이용한 익스플로어 제어 [1]
437혀기7/25/20068134DirectoryEntry의 Childrend에 Add할때 엑세스가 거부됩니다~ㅜㅜ [2]파일 다운로드1
436조성택7/24/20067992IE를 가로채서 그리고 싶을때.. [1]
439태기7/25/20068608    답변글 [답변]: IE를 가로채서 그리고 싶을때..(재질문) [1]파일 다운로드1
435이영균7/21/20069247작그마한 스마트클라이언트 프로젝트를 진행하고 있습니다. [1]파일 다운로드1
431혁이7/19/20068025UpdatePanel(Atlas)위의 SmartClient가 이벤트후 사라집니다. ㅜㅜ파일 다운로드1
432정성태7/19/20068346    답변글 [답변]: UpdatePanel(Atlas)위의 SmartClient가 이벤트후 사라집니다. ㅜㅜ
... 76  77  78  79  [80]  81  82  83  84  85  86  87  88  89  90  ...