Allows the creation of objects in the application process by code that is out-of-process to the application.
[in] Class identifier (CLSID) of the object to create.
[in] If NULL, the object is not being created as part of an aggregate. Otherwise, pUnkOuter is a pointer to the aggregate object's IUnknown interface (the controlling IUnknown).
[in] Context for running executable code. The values are taken from the enumeration CLSCTX.
[in] The interface identifier used to communicate with the object.
[out] Address of pointer variable that receives the interface pointer requested in riid. Upon successful return, *ppvObject contains the requested interface pointer. Upon failure, *ppvObject contains NULL.
The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.
The method succeeded.
This method delegates to CoCreateInstance.