3.1.2.5.2.3.3 IRemoteSCMActivator::RemoteCreateInstance (Opnum 4)

The RemoteCreateInstance (Opnum 4) method is used by clients to create an object reference for the actual object.

 HRESULT RemoteCreateInstance(
   [in] handle_t rpc,
   [in] ORPCTHIS* orpcthis,
   [out] ORPCTHAT* orpcthat,
   [in, unique] MInterfacePointer* pUnkOuter,
   [in, unique] MInterfacePointer* pActProperties,
   [out] MInterfacePointer** ppActProperties
 );

rpc:  This MUST specify an RPC binding handle as specified in [MS-RPCE] section 3.2.2.3.1.

orpcthis: This MUST specify an ORPCTHIS. The COMVERSION field SHOULD contain the negotiated version as defined in section 1.7. The extensions field MUST be set to NULL.

orpcthat: This MUST contain an ORPCTHAT. The extensions field MUST be set to NULL.

pUnkOuter:  This MUST be NULL and MUST be ignored by the recipient.

pActProperties: This MUST specify an MInterfacePointer that MUST contain an OBJREF_CUSTOM with a CLSID field set to CLSID_ActivationPropertiesIn (see section 1.9) and a pObjectData field that MUST contain an activation properties BLOB (see section 2.2.22). The iid field of the OBJREF portion of the structure MUST be set to IID_IActivationPropertiesIn (see section 1.9). An implementation MAY use this value as the IID of an interface with the local IDL attribute (section 2.2.27).<76>

The activation properties BLOB MUST contain properties that are marked Required in the following table and MAY contain properties that are marked Optional.

Property name

Section

Required or optional

InstantiationInfoData

2.2.22.2.1

Required

ScmRequestInfoData

2.2.22.2.4

Required

LocationInfoData

2.2.22.2.6

Required

SecurityInfoData

2.2.22.2.7

Optional

ActivationContextInfoData

2.2.22.2.5

Optional

InstanceInfoData

2.2.22.2.3

Optional

SpecialPropertiesData

2.2.22.2.2

Optional

Servers SHOULD ignore properties that they do not recognize.<77>

ppActProperties:  This MUST contain an MInterfacePointer that MUST contain an OBJREF_CUSTOM with a CLSID field set to CLSID_ActivationPropertiesOut (see section 1.9) and a pObjectData field that MUST contain an activation properties BLOB (see section 2.2.22). The iid field of the OBJREF portion of the structure MUST be set to IID_IActivationPropertiesOut (see section 1.9). An implementation MAY use this value as the IID of an interface with the local IDL attribute (section 2.2.27).<78>

The activation properties BLOB MUST contain all properties listed in the following table. Clients SHOULD ignore properties that they do not recognize.

Property name

Section

Required or optional

ScmReplyInfoData

2.2.22.2.8

Required

PropsOutInfo

2.2.22.2.9

Required

When processing this call, the object resolver MUST perform the operations specified in section 3.1.2.5.2.3.