Test project to experiment with COM technology based on code from codeproject.
Build with VS on win32. Register the resulting server.dll with regsvr32.
regsvr32 server.dll
regsvr32 /U server.dll
Create a virtual environment of a 32-bit python version with comtypes installed.
- CoCreateInstance is called using
- a CLSID (for example: CLSID_BVAA)
- a IID (for example: IID_IBVAA_summer)
- The DllGetClassObject function is called by the COM library as part of the work done by the CoCreateInstance() API
- DllGetClassObject handles the request conform to the documentation of windows
- Via the ClassFactory template an object is created and the pointer to the requested interface is returned
- Comprehensible notes on Aggregation in COM
- Explaination of the ClassFactory concept
- COM server explained 2
- Explaining the differences between most concepts and their relations
Computer\HKEY_CLASSES_ROOT\WOW6432Node\CLSID\ (CLSID of COM object)
- Friendly name
- InprocServer32: dll location
- ProgID
- VersionIndependentProgID
Computer\HKEY_CLASSES_ROOT\ (ProgID)
- CLSID
Computer\HKEY_CLASSES_ROOT\ (VersionIndependentProgID)
- CurVer