컴퓨터 공부/COM&ActiveX

[6월 10일 1교시] ClassFactory

려리군 2009. 6. 10. 09:23

ClassFactory

모든 서버는 각 컴포넌트에 대한 ClassFactory를 제공해야 한다.

서버는 ClassFactory객체를 전달하는(통해) 부트스트랩 기능을 수행한다.


CoCreateInstance(CLSID, ?, 컨텍스트, IID, 객체리턴);

 -(내부)-> 

CoGetClassObject(CLSID, 컨텍스트, remote 서버용, IID_IClassFactory, ClassFactory객체리턴);

: 레지스트리를 확인하여 ClassFactory의 객체를 얻는다.

ClassFactory객체->CreateInstance(?, IID, 객체리턴);


※ DLL이나 EXE에서 ClassFactory를 생성한다.


DllMain : 프로세스 상황에 따라서 여러번 호출될 수 있다.

DEF파일 : Export된 dll 함수에 대해 속성을 정의한다.


InProcess Server 에서 COM 객체 인스턴스 생성과정(243~244)