Partager via


ILocalRegistry.GetClassObjectOfClsid Method

Returns the class object associated with a CLSID.

Namespace:  Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (in Microsoft.VisualStudio.Shell.Interop.dll)

Syntax

'Déclaration
Function GetClassObjectOfClsid ( _
    ByRef clsid As Guid, _
    dwFlags As UInteger, _
    lpReserved As IntPtr, _
    ByRef riid As Guid, _
    <OutAttribute> ByRef ppvClassObject As IntPtr _
) As Integer
'Utilisation
Dim instance As ILocalRegistry
Dim clsid As Guid
Dim dwFlags As UInteger
Dim lpReserved As IntPtr
Dim riid As Guid
Dim ppvClassObject As IntPtr
Dim returnValue As Integer

returnValue = instance.GetClassObjectOfClsid(clsid, _
    dwFlags, lpReserved, riid, ppvClassObject)
int GetClassObjectOfClsid(
    ref Guid clsid,
    uint dwFlags,
    IntPtr lpReserved,
    ref Guid riid,
    out IntPtr ppvClassObject
)
int GetClassObjectOfClsid(
    [InAttribute] Guid% clsid, 
    [InAttribute] unsigned int dwFlags, 
    [InAttribute] IntPtr lpReserved, 
    [InAttribute] Guid% riid, 
    [OutAttribute] IntPtr% ppvClassObject
)
function GetClassObjectOfClsid(
    clsid : Guid, 
    dwFlags : uint, 
    lpReserved : IntPtr, 
    riid : Guid, 
    ppvClassObject : IntPtr
) : int

Parameters

  • clsid
    Type: System.Guid%

    [in] Class identifier (CLSID) of the requested object. This is the CLSID associated with the data and code that is used to create the object.

  • riid
    Type: System.Guid%

    [in] Interface to be used to communicate with the object. For example, IID_IClassFactory.

  • ppvClassObject
    Type: System.IntPtr%

    [in] Address of pointer variable that receives the interface pointer requested in riid. Upon successful return, ppvObj contains the requested interface pointer. Upon failure, ppvObj contains nulla null reference (Nothing in Visual Basic).

Return Value

Type: System.Int32

If the method succeeds, it returns S_OK. If it fails, it returns an error code.

Remarks

COM Signature

From objext.idl:

HRESULT ILocalRegistry::GetClassObjectOfClsid(
   [in] REFCLSID clsid,
   [in] DWORD dwFlags,
   [in] LPVOID lpReserved,
   [in] REFIID riid,
   [in] void** ppvClassObject
);

Specify a value of CLSCTX_INPROC_SERVER for the dwFlags parameter to instantiate the object locally. If you do not specify this value, then the object will be instantiated globally using COM's CoCreateInstance function.

Permissions

See Also

Reference

ILocalRegistry Interface

ILocalRegistry Members

Microsoft.VisualStudio.Shell.Interop Namespace