<div class="content"><p> </p><p>This form of <span><a href="ba4c4d80-ef81-49b4-848f-9714d72b5c01#gt_d2b5b331-4e5f-417f-92c5-38eef54176c2" data-linktype="relative-path">OBJREF</a></span> is used by a
server object to marshal itself into an opaque BLOB using a custom marshaler.
The custom marshaler is a COM object that can marshal and unmarshal the data
contained in the BLOB. The <span><a href="ba4c4d80-ef81-49b4-848f-9714d72b5c01#gt_e433c806-6cb6-46a2-bb95-523df8818c99" data-linktype="relative-path">CLSID</a></span> of the custom
marshaler object&#39;s <span><a href="ba4c4d80-ef81-49b4-848f-9714d72b5c01#gt_a224e395-3fea-48bd-b141-3dd9bee2136a" data-linktype="relative-path">object class</a></span> is
specified within the OBJREF.</p><p>If the interface specified by the <b>iid</b> field of the
OBJREF structure contained in the OBJREF_CUSTOM has the local <span><a href="ba4c4d80-ef81-49b4-848f-9714d72b5c01#gt_73177eec-4092-420f-92c5-60b2478df824" data-linktype="relative-path">IDL</a></span>
attribute (section <span><a href="100ac689-eb4e-4b63-8354-6e064a485d51" data-linktype="relative-path">2.2.27</a></span>), the
OBJREF_CUSTOM MUST represent an object that is local to the client that
unmarshals the object.</p><table>
 <tbody><tr>
  <th><p><br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>1<br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>2<br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>3<br/>0</p></th>
  <th><p><br/>1</p></th>
 </tr>
 <tr>
  <td colspan="32">
  <p>clsid (16
  bytes)</p>
  </td>
 </tr>
 <tr>
  <td colspan="32">
  <p>...</p>
  </td>
 </tr>
 <tr>
  <td colspan="32">
  <p>...</p>
  </td>
 </tr>
 <tr>
  <td colspan="32">
  <p>cbExtension</p>
  </td>
 </tr>
 <tr>
  <td colspan="32">
  <p>reserved</p>
  </td>
 </tr>
 <tr>
  <td colspan="32">
  <p>pObjectData
  (variable)</p>
  </td>
 </tr>
 <tr>
  <td colspan="32">
  <p>...</p>
  </td>
 </tr>
</tbody></table><p><b>clsid (16 bytes): </b>This MUST specify a CLSID,
supplied by an application or higher-layer protocol, identifying an object
class associated with the data in the <b>pObjectData</b> field.<a id="Appendix_A_Target_8"></a><a aria-label="Product behavior note 8" href="acc42954-4073-4f05-b850-efd562022077#Appendix_A_8" data-linktype="relative-path">&lt;8&gt;</a></p><p><b>cbExtension (4 bytes): </b>This MUST be set to
zero when sent and MUST be ignored on receipt.</p><p><b>reserved (4 bytes): </b>Unused. This can be set to
any arbitrary value when sent and MUST be ignored on receipt.</p><p><b>pObjectData (variable): </b>This MUST be an array
of bytes containing data supplied by an application or higher-layer protocol.</p></div>