부모글 보이기/감추기 AD BLOCK 해제 요청 이 글에는 광고가 많이 들어가 있지 않습니다. adblock을 해제하셔도 글을 읽는데 그다지 부담이 없으니 해제를 부탁드립니다. C++로 씌여진 COM라이브러리를 이용하는 C#프로젝트 입니다. 검색하다보니 아래 아티클을 발견하여 유용하게 잘사용하였습니다. 관련하여 질문있습니다. https://www.sysnet.pe.kr/Default.aspx?mode=2&sub=0&pageno=10&detail=1&wid=617 위에서처럼 C#에서 데이터를 DISPPARAMS에 실어 COM에 전달하는 것과는 반대로, COM에서 넘겨받은 DISPPARAMS로부터 데이터를 꺼내어 사용해야 하는데요. 어떤식으로 하면 될까요? Marshal.PtrTo...류의 메서드를 사용해봤는데, 잘 안되네요. [다음 글] COM 객체의 타입 변경[이전 글] .net 2008 c# 에서 만든 com+ 는 com탭에서 사용불가..?! [최초 등록일: 8/16/2010] [최종 수정일: 8/16/2010] 비밀번호 댓글 작성자 2010-08-16 09시00분 간단합니다. ^^본문의 소스코드에서 마지막 test.TestDISPPARAM(ref dispParams); 로 얻어낸 경우를 가정하면, 다음과 같이 구할 수 있습니다. object [] resultArgs = Marshal.GetObjectsForNativeVariants(dispParams.rgvarg, (int)dispParams.cArgs); foreach (object result in resultArgs) { Console.WriteLine(result); } kevin25 2010-08-17 08시20분 [임동찬] 감사합니다. ^^러브리해요~~~ [guest] 2010-08-17 08시50분 [임동찬] 아.. 그런데..GetObjectsForNativeVariants를 사용하게 되면 결과로 object 배열을 받게 되는데,그렇게 되면 rgvarg가 갖고 있던 값들의 타입(VT_BSTR, VT_DATE, VT_BOOL, ...)의 정보는 마샬링 과정에서 사라지게 되는 것인가요?만약 그렇다면 이들의 정보를 확인할 방법은 없는지요? 물론 C#에서요. [guest] 2010-08-17 09시47분 반환된 object 배열요소의 하나 하나가 타입이 있습니다. 즉, 언박싱을 하면 원래의 타입으로 돌아갑니다.위의 예제 코드의 foreach 루프 문 안에 다음과 같은 코드를 추가로 넣으면,Console.WriteLine(result.GetType().FullName);화면에는 다음과 같이 출력됩니다.System.Int32System.DoubleSystem.String즉, VT_* 타입에 맞게 object로 적절하게 마샬링됩니다. (물론, 복잡한 유형의 VT_* 조합은 꺼내는 것 또한 복잡해질 수 있습니다. 아마 불가능한 유형도 있지 않을까 싶은데요. ^^) kevin25 ... 16 17 18 19 20 21 22 23 24 25 [26] 27 28 29 30 ... NoWriterDateCnt.TitleFile(s) 5294닷넷초보ㅠ2/25/202016522윈폼으로 socket통신프로그램 만든후 release로 디버깅한 실행파일을 다른컴퓨터에서 실행할때 반응이없어요 [1]5293탱코2/21/202016058검색을 하고 싶은데 어떻게 검색을 해야 할 지 모르겠습니다. [1]5292아부리2/19/202015383XingApiNet 관련 질문 [3]5291지현명2/15/202016986JsonConvert.Serialize 하고 Deserialize 할때 간헐적으로 한글 깨짐 현상 문의 합니다. [3]5290베도빈2/15/202016057직접 제작한 사용자 정의 콘트롤 DLL, 실행파일에 포함시켜 배포할 수 있을까요? [1]5288김성배2/14/202016113c# 참조추가 기능에서 DirectX 참조가 보이지 않아요.. DircetX 11 은 설치 되어 있습니다. [1]5287C# 초...2/14/202014491프로그램 실행 질문 드립니다. [4]15286gongs2/3/202024447윈도우 배율 및 레이아웃에 대한 질문입니다. [3]5285강성욱1/27/202016773작업관리자에 표시되는 스레드 개수와 프로그램 내 스레드 개수 일치 [1]5284이상준1/15/202023561출력창에 '스레드가 종료되었습니다' 문구 문의 [2]15282봉봉이 1/13/202018499소켓 비동기 ReceiveTimeOut 구현 [9]15281봉봉이 1/13/202017041소켓 비동기 ReceiveTimeOut 구현 [2]5280sdd1/8/202014897데이터 저장, 배치파일 관련하여 질문드립니다. [4]5279김창한12/27/201915890dsoframer ocx [3]5278guest12/27/201914595CLR 스레드 풀 관련 질문 [1]5277방문자12/26/201914626WindowsForm 질문드립니다. [3]5276진우12/17/201917574c++/c# 에도 파이썬 가상환경 같은 기능 혹시 있는지 궁금합니다. [3]5275송재필12/17/201916214아래 'c#8.0 프로그래밍 교제 예제 관련 문의 드립니다' 의 원인이 압축 파일의 문제인듯 합니다. [2]15272정영훈12/13/201917006byte => string => byte 변환 문의드립니다. [5]15270김세미12/3/201915631c#8.0 프로그래밍 교제 예제 관련 문의 드립니다. [4]5269달려라라...12/2/201916599C# winform(framework) tabcontrol 에서 button 함수 관련 질문 [3]15266엔벌잉11/26/201915160라즈베리파이 autostart관련 질문 [2]5265해나11/25/201914434C# 6.0 책 내용 문의 [1]5264김혜원11/18/201918319C# CodeSign에 대해 여쭤볼 것이 있습니다 [4]5263정환맨11/17/201916832Task관련 질문입니다 [3]5262닷린이11/14/201918866Dispatcher 와 synchronizationcontext의 관계가 궁금합니다. [6] ... 16 17 18 19 20 21 22 23 24 25 [26] 27 28 29 30 ...