Export (0) Print
Expand All

ISurrogate::LoadDllServer method

Loads a DLL server into the implementing surrogate. COM calls this method when there is an activation request for the DLL server's class, if the class is registered as DllSurrogate.

Syntax


HRESULT LoadDllServer(
  [in]  REFCLSID Clsid
);

Parameters

Clsid [in]

The CLSID of the DLL server to be loaded.

Return value

This method can return the standard return values E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTED, and S_OK.

Remarks

Upon receiving a load request through LoadDllServer, the surrogate must perform the following steps:

  1. Create a class factory object that supports IUnknown, IClassFactory, and IMarshal.
  2. Call CoRegisterClassObject to register the new class factory object as the class factory for the requested CLSID.

This class factory's implementation of IClassFactory::CreateInstance will create an instance of the requested CLSID method by calling CoGetClassObject to get the class factory which creates an actual object for the given CLSID.

Requirements

Minimum supported client

Windows 2000 Professional [desktop apps | Windows Store apps]

Minimum supported server

Windows 2000 Server [desktop apps | Windows Store apps]

Header

ObjIdl.h

IDL

ObjIdl.idl

IID

IID_ISurrogate is defined as 00000022-0000-0000-C000-000000000046

See also

CoRegisterSurrogate
DllSurrogate
ISurrogate
Writing a Custom Surrogate

 

 

Community Additions

ADD
Show:
© 2015 Microsoft