2009-09-23 4 views
0

C++ VS2005 프로젝트에서 격리 COM 프로젝트 설정을 설정하여 등록없는 활성화 메소드를 사용하여 OCX 구성 요소를로드했습니다. ocx 구성 요소가 내 응용 프로그램이로드되는 DLL 라이브러리에서도 사용되는 경우 해당 DLL 프로젝트 설정에서도 격리 된 COM 설정을 설정해야합니까? 아니면 메인 애플리케이션의 임베디드 매니페스트만으로 충분할 것인가? 감사!종속 DLL에서 격리 된 COM 설정을 지정하거나 실행 만하면됩니까?

답변

0

필자가 이해 하듯이 격리는 모듈 단위가 아니라 프로세스 단위입니다. 따라서 응용 프로그램 매니페스트의 모든 내용이 해당 응용 프로그램에서 시작된 모든 프로세스에 적용됩니다.

등록이 필요없는 COM을 지원하기 위해 수행해야하는 CoCreateInstance 무엇을 생각 - 그것은 어떻게 든 그것은 현재의 경우 매니페스트 파일을 찾을 필요가 활성화 정보를 레지스트리에 갈.

CoCreateInstance에 매니페스트의 경로를 알리는 인수가 없으므로 문맥에서 파생되어야합니다.

.DLL에 대한 실제 컨텍스트가 없지만 .EXE의 경우 현재 프로세스 핸들을 사용하여 실행 파일의 경로 등을 파생시킬 수 있으므로 그 방법을 수행하는 것으로 판단됩니다.