<div class="content" name="RemoteGetClassObject" uuid="c5917c4f-aaf5-46de-8667-bad7e495abf9"><p>The RemoteGetClassObject (Opnum 3) method is used by clients
to create an object reference for the <a href="ba4c4d80-ef81-49b4-848f-9714d72b5c01#gt_6f5973be-3408-4d7f-ae3e-7303e28bee94" data-linktype="relative-path">class factory</a> object.</p><dl>
<dd>
<div><pre> HRESULT RemoteGetClassObject(
   [in] handle_t rpc,
   [in] ORPCTHIS* orpcthis,
   [out] ORPCTHAT* orpcthat,
   [in, unique] MInterfacePointer* pActProperties,
   [out] MInterfacePointer** ppActProperties
 );
</pre></div>
</dd></dl><p><b>rpc: </b> This MUST specify an <a href="ba4c4d80-ef81-49b4-848f-9714d72b5c01#gt_8a7f6700-8311-45bc-af10-82e10accd331" data-linktype="relative-path">RPC</a> binding handle as
specified in <a href="../ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15" data-linktype="relative-path">[MS-RPCE]</a>
section <a href="../ms-rpce/de240b5e-6487-485e-9086-5069977f89db" data-linktype="relative-path">3.2.2.3.1</a>.</p><p><b>orpcthis: </b> This MUST specify an ORPCTHIS. The <a href="807a93f5-7321-4bdb-b88a-59059566afd3" data-linktype="relative-path">COMVERSION</a> field SHOULD
contain the negotiated version as specified in section 2.2.11. The extensions
field MUST be set to NULL.</p><p><b>orpcthat: </b>This MUST contain an ORPCTHAT. The
extensions field MUST be set to NULL.</p><p><b>pActProperties: </b>This MUST specify an <a href="21781a97-cb45-4655-82b0-02c4a1584603" data-linktype="relative-path">MInterfacePointer</a> that
MUST contain an <a href="88fdb261-7c9a-41ea-bfac-31583bdc65e6" data-linktype="relative-path">OBJREF_CUSTOM</a>
with a <a href="ba4c4d80-ef81-49b4-848f-9714d72b5c01#gt_e433c806-6cb6-46a2-bb95-523df8818c99" data-linktype="relative-path">CLSID</a> field set
to CLSID_ActivationPropertiesIn (section <a href="c25391af-f59e-40da-885e-cc84076673e4" data-linktype="relative-path">1.9</a>) and a <b>pObjectData</b>
field that MUST contain an activation properties BLOB (section <a href="d48f1e14-0247-4b70-808a-3f3914ae205d" data-linktype="relative-path">2.2.22</a>). The <b>iid</b>
field of the <a href="fe6c5e46-adf8-4e34-a8de-3f756c875f31" data-linktype="relative-path">OBJREF</a>
portion of the structure MUST be set to IID_IActivationPropertiesIn (see
section 1.9). An implementation MAY use this value as the <a href="ba4c4d80-ef81-49b4-848f-9714d72b5c01#gt_76ad3105-3f05-479d-a40c-c9c8fa2ebd83" data-linktype="relative-path">IID</a> of an interface with
the local IDL attribute (section <a href="100ac689-eb4e-4b63-8354-6e064a485d51" data-linktype="relative-path">2.2.27</a>).<a id="Appendix_A_Target_73"></a><a aria-label="Product behavior note 73" href="acc42954-4073-4f05-b850-efd562022077#Appendix_A_73" data-linktype="relative-path">&lt;73&gt;</a></p><dl>
<dd>
<p>The activation properties BLOB MUST contain
properties marked Required in the following table and MAY contain properties
marked Optional. </p>
</dd>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Property Name </p>
   </th>
   <th>
   <p>Section </p>
   </th>
   <th>
   <p>Required or Optional </p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>InstantiationInfoData</td>
  <td>2.2.22.2.1</td>
  <td>Required</td>
 </tr><tr>
  <td>ScmRequestInfoData</td>
  <td>2.2.22.2.4</td>
  <td>Required</td>
 </tr><tr>
  <td>LocationInfoData</td>
  <td>2.2.22.2.6</td>
  <td>Required</td>
 </tr><tr>
  <td>SecurityInfoData</td>
  <td>2.2.22.2.7</td>
  <td>Optional</td>
 </tr><tr>
  <td>ActivationContextInfoData</td>
  <td>2.2.22.2.5</td>
  <td>Optional</td>
 </tr><tr>
  <td>InstanceInfoData</td>
  <td>2.2.22.2.3</td>
  <td>Optional</td>
 </tr><tr>
  <td>SpecialPropertiesData</td>
  <td>2.2.22.2.2</td>
  <td>Optional</td>
 </tr></tbody></table>
</dd>
<dd>
<p>Servers SHOULD ignore properties that they do not
recognize.<a id="Appendix_A_Target_74"></a><a aria-label="Product behavior note 74" href="acc42954-4073-4f05-b850-efd562022077#Appendix_A_74" data-linktype="relative-path">&lt;74&gt;</a></p>
</dd></dl><p><b>ppActProperties: </b> This MUST contain an MInterfacePointer
that MUST contain an OBJREF_CUSTOM with a CLSID field set to
CLSID_ActivationPropertiesOut (section 1.9) and a <b>pObjectData</b> field that
MUST contain an activation properties BLOB (section 2.2.22). The <b>iid</b>
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).<a id="Appendix_A_Target_75"></a><a aria-label="Product behavior note 75" href="acc42954-4073-4f05-b850-efd562022077#Appendix_A_75" data-linktype="relative-path">&lt;75&gt;</a></p><dl>
<dd>
<p>The activation properties BLOB MUST contain all
properties listed in the following table. Clients SHOULD ignore properties that
they do not recognize.</p>
</dd>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Property Name </p>
   </th>
   <th>
   <p>Section </p>
   </th>
   <th>
   <p>Required or Optional </p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>ScmReplyInfoData</td>
  <td>2.2.22.2.8</td>
  <td>Required</td>
 </tr><tr>
  <td>PropsOutInfo</td>
  <td>2.2.22.2.9</td>
  <td>Required</td>
 </tr></tbody></table>
</dd></dl><p>When processing this call, the <a href="ba4c4d80-ef81-49b4-848f-9714d72b5c01#gt_19f75354-9b0b-47cb-a00b-4ff196883b32" data-linktype="relative-path">object resolver</a> MUST
perform the operations specified in section <a href="f07e681a-16f9-4194-a453-63c7972f2161" data-linktype="relative-path">3.1.2.5.2.3</a>.</p></div>