Microsoft MVP성태의 닷넷 이야기
Managed 어셈블리에서의 COM EntryPoint procaddress 문제 [링크 복사], [링크+제목 복사],
조회: 19170
글쓴 사람
뽀로로
홈페이지
첨부 파일
 

COM쪽 지식이 부족하여, 질문에 상황 설명이 정확하게 될 수 있을지 모르겠습니다만 양해 부탁드리겠습니다.

현재 상황은 아래와 같습니다.
이전에 W32기반으로 개발된 내부 엔진이 있는 상태이며, 이 엔진은 COM으로 제작된 DLL들을 통해 확장 기능을 구현하고 있습니다. UI또한 이런 식으로 확장이 되어 있는데, 현재 .NET 3.5CF 기반으로 제작된 WPF 기반의 UI 어플리케이션과 이 엔진을 연동해야 할 필요성이 생긴 상태입니다.

기존의 경우, 엔진과 UI 확장 모두 W32기반으로 구성되어 있고 이를 위한 COM 인터페이스는 확정이 된 상태라, COM interop을 통해 이를 구현하는 managed assembly로 UI기반을 대체하고 이를 UI 어플리케이션과 연동하고자 하는 계획을 가지고 있습니다. 헌데 문제는, 엔진 내부에서 확장 모듈을 불러 올 때 명시적으로 몇몇 EntryPoint를 체크하고 있는데, DllCanUnloadNow() / DllGetClassObject()의 두 함수의 주소를 확장 DLL 로딩시에 반드시 저장하도록 하고 있습니다만 Managed 어셈블리에서는 이 Entrypoint를 찾지 못하고 있습니다. 제 COM interop 구현에 문제가 있는 것인지, 아니면 우회할 수 있는 방법이 있는지 여쭙고자 질문을 드립니다.








[최초 등록일: ]
[최종 수정일: 12/12/2011]


비밀번호

댓글 작성자
 



2011-12-13 10시28분
다소 이해할 수 없는 상황인데요. 해당 COM 개체로부터 DllCanUnloadNow/DllGetClassObject 함수의 주소를 가져올 수 없다면 - 즉 EntryPoint를 가져올 수 없다면, '사용'하는 것 역시 안되어야 정상일텐데요. (개별적인 사용은 되나요?)

그리고, 위의 글 만으로는 제가 추측할 수 있는 방법이 거의 없습니다.

'Win32 기반으로 개발된 내부 엔진'이라고 했으니... 어쨌든 그 엔진의 소스 코드를 디버깅하면 쉽게 나올 수 있는 문제가 아닐까 싶은데요. 어차피 정형화된 GetProcAddress와 LoadLibrary를 사용하고 있을테니까요.
정성태

... 16  17  18  19  [20]  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
5467hero...2/4/202115570실행 환경에 따른 Thread.Sleep 딜레이 차이 질문 [8]
5466pr1/29/202115547c# winform load시 작업표시줄에 뜨지 않는 현상을 겪으신적이 있으신가요? [4]파일 다운로드1
5465영귤1/28/202115489두 번째 await 부터는 스레드 개수만 늘어나는 것이 아닌가요 [1]
5464민우1/26/202117064C# 빌드시 코드 치환되는걸 확인하는 방법 문의 [2]
5463한예지 donator1/24/202117933Parameters.AddWithValue 와 Parameters.Add 의 차이점이 궁금합니다. [2]
5462C#초보1/22/202118371사용자 정의 메시지 전달이 가능한가요? [2]
5461한예지 donator1/22/202116168AsEnumerable() 메서드 질문 있습니다! [2]
5459한예지 donator1/21/202115933typeof와 GetType의 차이점 질문있습니다. [2]
5458진우1/20/202117211C# DataTable 에 SQL 쿼리문을 실행하는 방법 문의 (LINQ 사용하지 않고) [6]
5456성민1/17/2021187339.0 출간 계획이 있으신가요? [2]
5455한예지 donator1/16/202116000교재 194페이지 콜백메서드 질문 있습니다! [5]
5454한예지 donator1/15/202114647교재 208쪽 질문....있습니다... [3]
5453안녕하세요1/15/202116908C# dll 파일을 C++에서 사용 시 memory leak 문제 [2]파일 다운로드1
5452예지1/15/202116509var를 사용할 수 없는 이유가 궁금합니다! [3]
5451예지1/14/202114156for문의 초기식에 대해 질문드립니다. [3]
5450예지1/13/202114685Action 델리게이트 사용법 질문있습니다! [2]
5449김성민1/13/202115866Winform UserControl 상속 vs 감싸기? [2]
5448서형주1/13/202115318안녕하세요~~ DataGridView에 데이터를 표시하는 동작방법이 궁금합니다. [2]
5447종범1/11/202116436[WPF/OpenCV] 이미지->영상 저장에 대해서 질문 드립니다!! [5]파일 다운로드1
5446민우1/11/202114949닷넷 런타임을 dll 파일로 포함시킬수 있나요? [2]
5445정도현1/8/202113511directShow RenderFile 관련 재질문드립니다 [5]파일 다운로드1
5444정도현1/8/202113929directShow RenderFile 관련 질문드립니다 [3]
5443윤영호1/7/202114667xml 파일에서 데이터를 가지고 와서 list에 넣는 것을 질문드리고 싶습니다. [1]파일 다운로드1
5442진우1/4/202113891DB연결 객체나 파일 등은 GC 에서 관리해주지 않는 이유가 궁금합니다. [2]
5441한예지 donator1/4/202115300DB 연결 방법 질문 있습니다. [1]
5440한예지 donator1/1/202115326추상클래스로와 new [4]
... 16  17  18  19  [20]  21  22  23  24  25  26  27  28  29  30  ...