Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Microsoft Specific
Creates a new instance of an object given a CLSID or ProgID.
HRESULT CreateInstance( 
   const CLSID& rclsid, 
   IUnknown* pOuter=NULL, 
   DWORD dwClsContext = CLSCTX_ALL  
) throw( ); 
HRESULT CreateInstance( 
   LPCWSTR clsidString, 
   IUnknown* pOuter=NULL, 
   DWORD dwClsContext = CLSCTX_ALL  
) throw( ); 
HRESULT CreateInstance( 
   LPCSTR clsidStringA, 
   IUnknown* pOuter=NULL, 
   DWORD dwClsContext = CLSCTX_ALL  
) throw( );
Parameters
- rclsid 
 The CLSID of an object.
- clsidString 
 A Unicode string that holds either a CLSID (starting with "{") or a ProgID.
- clsidStringA 
 A multibyte string, using the ANSI code page, that holds either a CLSID (starting with "{") or a ProgID.
- dwClsContext 
 Context for running executable code.
- pOuter 
 The outer unknown for aggregation.
Remarks
These member functions call CoCreateInstance to create a new COM object and then queries for this smart pointer's interface type. The resulting pointer is then encapsulated within this _com_ptr_t object. Release is called to decrement the reference count for the previously encapsulated pointer. This routine returns the HRESULT to indicate success or failure.
- CreateInstance( rclsid**,** dwClsContext ) Creates a new running instance of an object given a CLSID. 
- CreateInstance( clsidString**,** dwClsContext ) Creates a new running instance of an object given a Unicode string that holds either a CLSID (starting with "{") or a ProgID. 
- CreateInstance( clsidStringA**,** dwClsContext ) Creates a new running instance of an object given a multibyte character string that holds either a CLSID (starting with "{") or a ProgID. Calls MultiByteToWideChar, which assumes that the string is in the ANSI code page rather than an OEM code page. 
END Microsoft Specific