COM DCOM Question:
What happens when client calls CoCreateInstance?
Answer:
- Reads Root\Classes\ProgId for the matching ProgID
- Reads Root\Classes\ProgId for the matching CLSID. The
CLSID is read from the above step.
- From the CLSID key, the server type and image filename is
known.
- Depending upon the server type, it starts the server.
- Calls CoGetClassObject function to get a handle to the
factory object.
- Then calls createinstance on the factory interface to get
the pointer to the derived object.
- Reads Root\Classes\ProgId for the matching CLSID. The
CLSID is read from the above step.
- From the CLSID key, the server type and image filename is
known.
- Depending upon the server type, it starts the server.
- Calls CoGetClassObject function to get a handle to the
factory object.
- Then calls createinstance on the factory interface to get
the pointer to the derived object.
Previous Question | Next Question |
What should QueryInterface functions do if requested object was not found? | How to create an instance of the object in COM? |