Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 1760bbde8794f5b323299b3a051b5bd6 > files > 82

openchange-devel-0.9-11.fc14.x86_64.rpm

<html>
  <head>
    <title>MAPIClientLibraries 0.9 API Documentation</title>
    <link href="doxygen.css" rel="stylesheet" type="text/css"/>
    <link href="apidocs.css" rel="stylesheet" type="text/css"/>
  </head>
  <body>
    <div id="website">
    <div class="header"></div>
      <div id="middle_side">
	<div id="right_side_home">
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<h1>libmapi/IMAPIProp.c File Reference</h1>  </div>
</div>
<div class="contents">

<p>Properties and named properties operations.  
<a href="#_details">More...</a></p>
<code>#include &lt;<a class="el" href="libmapi_8h.html">libmapi/libmapi.h</a>&gt;</code><br/>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a5ee9cbd64423c52c3d40df8658bb4648">CopyProps</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj_src, <a class="el" href="structmapi__object.html">mapi_object_t</a> *obj_dst, struct SPropTagArray *tags, uint8_t copyFlags, uint16_t *problemCount, struct PropertyProblem **problems)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#afa8565f9bda2e4e522162fd851fead4f">CopyTo</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj_src, <a class="el" href="structmapi__object.html">mapi_object_t</a> *obj_dst, struct SPropTagArray *excludeTags, uint8_t copyFlags, uint16_t *problemCount, struct PropertyProblem **problems)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a729ca053b8f7a3bd7c6a299559c26053">DeletePropertiesNoReplicate</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, struct SPropTagArray *proptags)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ad7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, struct SPropTagArray *proptags)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ac7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, uint16_t count, struct MAPINAMEID *nameid, uint32_t ulFlags, struct SPropTagArray **proptags)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a980b8bb8e01c3a4648b62add304db9a3">GetNamesFromIDs</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, enum MAPITAGS ulPropTag, uint16_t *count, struct MAPINAMEID **nameid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a20913af3ef18646635530f5bd8021061">GetPropList</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, struct SPropTagArray *proptags)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ad71fddaae9ab98871ffe4fec3938a704">GetProps</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, struct SPropTagArray *SPropTagArray, struct SPropValue **lpProps, uint32_t *PropCount)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ae216a092d1517c67db706536631404ff">GetPropsAll</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, struct mapi_SPropValue_array *properties)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#aa27de452605d7989c8c2686cee7780b7">QueryNamedProperties</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, uint8_t queryFlags, struct GUID *guid, uint16_t *count, uint16_t **propID, struct MAPINAMEID **nameid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ac2ac74760d05cc2663b5a95c4d57e5e0">SaveChangesAttachment</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj_parent, <a class="el" href="structmapi__object.html">mapi_object_t</a> *obj_child, enum SaveFlags flags)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a0b8eb86418fa2470c59f3d1b0bf24c52">SetPropertiesNoReplicate</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, struct SPropValue *lpProps, unsigned long PropCount)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ac1a2bac380d3bec8aec51e883bbc4893">SetProps</a> (<a class="el" href="structmapi__object.html">mapi_object_t</a> *obj, struct SPropValue *lpProps, unsigned long PropCount)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Properties and named properties operations. </p>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="a5ee9cbd64423c52c3d40df8658bb4648"></a><!-- doxytag: member="IMAPIProp.c::CopyProps" ref="a5ee9cbd64423c52c3d40df8658bb4648" args="(mapi_object_t *obj_src, mapi_object_t *obj_dst, struct SPropTagArray *tags, uint8_t copyFlags, uint16_t *problemCount, struct PropertyProblem **problems)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS CopyProps </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj_src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj_dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropTagArray *&nbsp;</td>
          <td class="paramname"> <em>tags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&nbsp;</td>
          <td class="paramname"> <em>copyFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t *&nbsp;</td>
          <td class="paramname"> <em>problemCount</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct PropertyProblem **&nbsp;</td>
          <td class="paramname"> <em>problems</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Copy properties from one object to another</p>
<p>This function copies (or moves) specified properties from one object to another.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj_src</em>&nbsp;</td><td>the object to copy properties from </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>obj_dst</em>&nbsp;</td><td>the object to set properties on </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>copyFlags</em>&nbsp;</td><td>flags to determine whether to copy or move, and whether to overwrite existing properties. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>tags</em>&nbsp;</td><td>the list of properties to copy </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>problemCount</em>&nbsp;</td><td>(return value) number of entries in the problems array </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>problems</em>&nbsp;</td><td>(return value) array of problemCount entries.</td></tr>
  </table>
  </dd>
</dl>
<p>The caller is responsible for freeing the <b>problems</b> array using <a class="el" href="IUnknown_8c.html#a52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>. If the <b>problemCount</b> pointer is NULL, then the problems array will not be returned.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a2302fd8484a99435dcf605f79cf9e8ba">GetProps</a>, <a class="el" href="proto_8h.html#a0ddd5dd9827db2d23d94440042abab37">SetProps</a>, <a class="el" href="proto_8h.html#a829a7a28788124c422e42d007b47e9e3">DeleteProps</a>, <a class="el" href="proto_8h.html#acb5175bbc1caa88d0d5b8ed053b02b34">CopyTo</a>, <a class="el" href="proto_8h.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
<a class="anchor" id="afa8565f9bda2e4e522162fd851fead4f"></a><!-- doxytag: member="IMAPIProp.c::CopyTo" ref="afa8565f9bda2e4e522162fd851fead4f" args="(mapi_object_t *obj_src, mapi_object_t *obj_dst, struct SPropTagArray *excludeTags, uint8_t copyFlags, uint16_t *problemCount, struct PropertyProblem **problems)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS CopyTo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj_src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj_dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropTagArray *&nbsp;</td>
          <td class="paramname"> <em>excludeTags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&nbsp;</td>
          <td class="paramname"> <em>copyFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t *&nbsp;</td>
          <td class="paramname"> <em>problemCount</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct PropertyProblem **&nbsp;</td>
          <td class="paramname"> <em>problems</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Copy multiple properties from one object to another</p>
<p>This function copies (or moves) properties from one object to another. Unlike CopyProperties, this function copies all properties except those identified.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj_src</em>&nbsp;</td><td>the object to copy properties from </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>obj_dst</em>&nbsp;</td><td>the object to set properties on </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>excludeTags</em>&nbsp;</td><td>the list of properties to <em>not</em> copy </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>copyFlags</em>&nbsp;</td><td>flags to determine whether to copy or move, and whether to overwrite existing properties. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>problemCount</em>&nbsp;</td><td>(return value) number of entries in the problems array </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>problems</em>&nbsp;</td><td>(return value) array of problemCount entries.</td></tr>
  </table>
  </dd>
</dl>
<p>The caller is responsible for freeing the <b>problems</b> array using <a class="el" href="IUnknown_8c.html#a52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>. If the <b>problemCount</b> pointer is NULL, then the problems array will not be returned.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a2302fd8484a99435dcf605f79cf9e8ba">GetProps</a>, <a class="el" href="proto_8h.html#a0ddd5dd9827db2d23d94440042abab37">SetProps</a>, <a class="el" href="proto_8h.html#a829a7a28788124c422e42d007b47e9e3">DeleteProps</a>, <a class="el" href="proto_8h.html#a8ec4ba29f2a9b89edda4cda1c4c4856c">CopyProps</a> </dd></dl>

<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
<a class="anchor" id="a729ca053b8f7a3bd7c6a299559c26053"></a><!-- doxytag: member="IMAPIProp.c::DeletePropertiesNoReplicate" ref="a729ca053b8f7a3bd7c6a299559c26053" args="(mapi_object_t *obj, struct SPropTagArray *proptags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS DeletePropertiesNoReplicate </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropTagArray *&nbsp;</td>
          <td class="paramname"> <em>proptags</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Deletes property values from an object without invoking replication.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to remove properties from </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>proptags</em>&nbsp;</td><td>the properties to remove from the given object</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a829a7a28788124c422e42d007b47e9e3">DeleteProps</a> </dd></dl>

<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
<a class="anchor" id="ad7c939f4d2da811a8913e6563c9c98f3"></a><!-- doxytag: member="IMAPIProp.c::DeleteProps" ref="ad7c939f4d2da811a8913e6563c9c98f3" args="(mapi_object_t *obj, struct SPropTagArray *proptags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS DeleteProps </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropTagArray *&nbsp;</td>
          <td class="paramname"> <em>proptags</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Delete one or more properties from an object</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to remove properties from </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>proptags</em>&nbsp;</td><td>the properties to remove from the given object</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a0ddd5dd9827db2d23d94440042abab37">SetProps</a>, <a class="el" href="proto_8h.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
<a class="anchor" id="ac7a673fa38d4f737c5b1f8fa905f8155"></a><!-- doxytag: member="IMAPIProp.c::GetIDsFromNames" ref="ac7a673fa38d4f737c5b1f8fa905f8155" args="(mapi_object_t *obj, uint16_t count, struct MAPINAMEID *nameid, uint32_t ulFlags, struct SPropTagArray **proptags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS GetIDsFromNames </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&nbsp;</td>
          <td class="paramname"> <em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct MAPINAMEID *&nbsp;</td>
          <td class="paramname"> <em>nameid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&nbsp;</td>
          <td class="paramname"> <em>ulFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropTagArray **&nbsp;</td>
          <td class="paramname"> <em>proptags</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Provides the property identifiers that correspond to one or more property names.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object we are retrieving the identifiers from </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>count of property names pointed to by the nameid parameter. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nameid</em>&nbsp;</td><td>pointer to an array of property names </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ulFlags</em>&nbsp;</td><td>indicates how the property identifiers should be returned </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>proptags</em>&nbsp;</td><td>pointer to a pointer to an array of property tags containing existing or newly assigned property identifiers. Property types in this array are set to PT_NULL.</td></tr>
  </table>
  </dd>
</dl>
<p>ulFlags can be set to:</p>
<ul>
<li>0 retrieves named properties from the server</li>
<li>MAPI_CREATE create the named properties if they don't exist on the server</li>
</ul>
<dl class="note"><dt><b>Note:</b></dt><dd>count and nameid parameter can automatically be built using the <a class="el" href="structmapi__nameid.html">mapi_nameid</a> API.</dd></dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#af2084aa1318156973399cd8c7971912e">GetIDsFromNames</a>, QueryNamesFromIDs, <a class="el" href="proto_8h.html#a68f9e170c1dfd3ecbe4e6a58afa54998">mapi_nameid_new</a> </dd></dl>

<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>, and <a class="el" href="mapidefs_8h.html#a7a17cf681f644f08a34d7125f302efa8">PT_UNSPECIFIED</a>.</p>

<p>Referenced by <a class="el" href="proto_8h.html#a2302fd8484a99435dcf605f79cf9e8ba">GetProps()</a>, <a class="el" href="proto_8h.html#ae5c9f39f8d1d0aead3beaacd9a8c9e92">mapi_nameid_GetIDsFromNames()</a>, <a class="el" href="proto_8h.html#a0718735fdc7da84886484ba44305d4af">SetPropertiesNoReplicate()</a>, and <a class="el" href="proto_8h.html#a0ddd5dd9827db2d23d94440042abab37">SetProps()</a>.</p>

</div>
</div>
<a class="anchor" id="a980b8bb8e01c3a4648b62add304db9a3"></a><!-- doxytag: member="IMAPIProp.c::GetNamesFromIDs" ref="a980b8bb8e01c3a4648b62add304db9a3" args="(mapi_object_t *obj, enum MAPITAGS ulPropTag, uint16_t *count, struct MAPINAMEID **nameid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS GetNamesFromIDs </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">enum MAPITAGS&nbsp;</td>
          <td class="paramname"> <em>ulPropTag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t *&nbsp;</td>
          <td class="paramname"> <em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct MAPINAMEID **&nbsp;</td>
          <td class="paramname"> <em>nameid</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Provides the property names that correspond to one or more property identifiers.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object we are retrieving the names from </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ulPropTag</em>&nbsp;</td><td>the mapped property tag </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>count of property names pointed to by the nameid parameter returned by the server </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nameid</em>&nbsp;</td><td>pointer to a pointer to property names returned by the server</td></tr>
  </table>
  </dd>
</dl>
<p>ulPropTag must be a property with type set to PT_NULL</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#af2084aa1318156973399cd8c7971912e">GetIDsFromNames</a>, QueryNamesFromIDs </dd></dl>

<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

<p>Referenced by <a class="el" href="proto_8h.html#ad32abce3feeec927d5e4a08ebdb85363">mapi_SPropValue_array_named()</a>.</p>

</div>
</div>
<a class="anchor" id="a20913af3ef18646635530f5bd8021061"></a><!-- doxytag: member="IMAPIProp.c::GetPropList" ref="a20913af3ef18646635530f5bd8021061" args="(mapi_object_t *obj, struct SPropTagArray *proptags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS GetPropList </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropTagArray *&nbsp;</td>
          <td class="paramname"> <em>proptags</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Retrieve all the properties associated with a given object</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to retrieve properties for </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>proptags</em>&nbsp;</td><td>the resulting list of properties associated with the object</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<p>The developer MUST provide an allocated SPropTagArray structure to the function.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a2302fd8484a99435dcf605f79cf9e8ba">GetProps</a>, <a class="el" href="proto_8h.html#ae158380be31ef5121ebcccb99c5f980d">GetPropsAll</a>, <a class="el" href="proto_8h.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
<a class="anchor" id="ad71fddaae9ab98871ffe4fec3938a704"></a><!-- doxytag: member="IMAPIProp.c::GetProps" ref="ad71fddaae9ab98871ffe4fec3938a704" args="(mapi_object_t *obj, struct SPropTagArray *SPropTagArray, struct SPropValue **lpProps, uint32_t *PropCount)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS GetProps </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropTagArray *&nbsp;</td>
          <td class="paramname"> <em>SPropTagArray</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropValue **&nbsp;</td>
          <td class="paramname"> <em>lpProps</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t *&nbsp;</td>
          <td class="paramname"> <em>PropCount</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns values of one or more properties for an object</p>
<p>The function takes a pointer on the object obj, a MAPITAGS array specified in mapitags, and the count of properties. The function returns associated values within the SPropValue values pointer.</p>
<p>The array of MAPI property tags can be filled with both known and named properties.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to get properties on </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>SPropTagArray</em>&nbsp;</td><td>an array of MAPI property tags </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>lpProps</em>&nbsp;</td><td>the result of the query </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>PropCount</em>&nbsp;</td><td>the count of property tags</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_INVALID_PARAMETER: obj or SPropTagArray are null, or the session context could not be obtained</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a0ddd5dd9827db2d23d94440042abab37">SetProps</a>, <a class="el" href="proto_8h.html#aed96168262c4acfeab8d06ff35601aeb">GetPropList</a>, <a class="el" href="proto_8h.html#ae158380be31ef5121ebcccb99c5f980d">GetPropsAll</a>, <a class="el" href="proto_8h.html#a829a7a28788124c422e42d007b47e9e3">DeleteProps</a>, <a class="el" href="proto_8h.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="structmapi__nameid.html#a8982a0ada9645b0af61dd0a9aa50b8d0">mapi_nameid::count</a>, <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ada6d4bd3a6c9fe47d33a40c3212c8cb1">emsmdb_get_SPropValue()</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="IMAPIProp_8c.html#ac7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="structmapi__ctx.html#a959500d050843deb2da3ed0537471b8f">mapi_ctx::lp_ctx</a>, <a class="el" href="mapi__nameid_8c.html#af7418bf978061721530b5f8fb8940694">mapi_nameid_lookup_SPropTagArray()</a>, <a class="el" href="mapi__nameid_8c.html#a8662ee1914917df779ebf854361fb0bf">mapi_nameid_map_SPropTagArray()</a>, <a class="el" href="mapi__nameid_8c.html#a7705209e3f79f856778b900123159f80">mapi_nameid_new()</a>, <a class="el" href="mapi__nameid_8c.html#ad4237bda2484c14ee13fa7f2f5681345">mapi_nameid_unmap_SPropTagArray()</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="IUnknown_8c.html#a52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>, <a class="el" href="structmapi__nameid.html#af801cad10b0bdef13e50aeeab2e8e08f">mapi_nameid::nameid</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

<p>Referenced by <a class="el" href="simple__mapi_8c.html#ac77ec981ccaa328f0fd1c9cdc03ae153">GetBestBody()</a>, <a class="el" href="simple__mapi_8c.html#a7b3fc634875a5d59ea50a4b8f0b11074">GetFolderItemsCount()</a>, and <a class="el" href="proto_8h.html#a51ddeca55f13055917a8b43d28a5f11f">GetUserFreeBusyData()</a>.</p>

</div>
</div>
<a class="anchor" id="ae216a092d1517c67db706536631404ff"></a><!-- doxytag: member="IMAPIProp.c::GetPropsAll" ref="ae216a092d1517c67db706536631404ff" args="(mapi_object_t *obj, struct mapi_SPropValue_array *properties)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS GetPropsAll </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct mapi_SPropValue_array *&nbsp;</td>
          <td class="paramname"> <em>properties</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Retrieve all properties and values associated with an object</p>
<p>This function returns all the properties and and associated values for a given object.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to get the properties for </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>properties</em>&nbsp;</td><td>the properties / values for the object</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a2302fd8484a99435dcf605f79cf9e8ba">GetProps</a>, <a class="el" href="proto_8h.html#aed96168262c4acfeab8d06ff35601aeb">GetPropList</a>, <a class="el" href="proto_8h.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="fetchappointment_8c-example.html#a21">fetchappointment.c</a>, and <a class="el" href="fetchmail_8c-example.html#a21">fetchmail.c</a>.</dd>
</dl>
<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
<a class="anchor" id="aa27de452605d7989c8c2686cee7780b7"></a><!-- doxytag: member="IMAPIProp.c::QueryNamedProperties" ref="aa27de452605d7989c8c2686cee7780b7" args="(mapi_object_t *obj, uint8_t queryFlags, struct GUID *guid, uint16_t *count, uint16_t **propID, struct MAPINAMEID **nameid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS QueryNamedProperties </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&nbsp;</td>
          <td class="paramname"> <em>queryFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct GUID *&nbsp;</td>
          <td class="paramname"> <em>guid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t *&nbsp;</td>
          <td class="paramname"> <em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t **&nbsp;</td>
          <td class="paramname"> <em>propID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct MAPINAMEID **&nbsp;</td>
          <td class="paramname"> <em>nameid</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Provides the property names that correspond to one or more property identifiers.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to obtain the properties for </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>queryFlags</em>&nbsp;</td><td>A set of flags that can restrict the type of properties </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>guid</em>&nbsp;</td><td>a pointer to the GUID for the property set to fetch (null for all property sets. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>count of property names pointed to by the nameid and propID parameters returned by the server </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>propID</em>&nbsp;</td><td>pointer to an array of property IDs returned by the server </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nameid</em>&nbsp;</td><td>pointer to an array of property names returned by the server</td></tr>
  </table>
  </dd>
</dl>
<dl class="note"><dt><b>Note:</b></dt><dd>queryFlags can be NoStrings (0x1) or NoIds (0x2), neither or both. NoStrings will produce only ID properties, NoIds will produce only named properties, and both will result in no output.</dd></dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#ae3c6c832f8dddb0a4755dbc6c19c5233">GetNamesFromIDs</a> </dd></dl>

<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
<a class="anchor" id="ac2ac74760d05cc2663b5a95c4d57e5e0"></a><!-- doxytag: member="IMAPIProp.c::SaveChangesAttachment" ref="ac2ac74760d05cc2663b5a95c4d57e5e0" args="(mapi_object_t *obj_parent, mapi_object_t *obj_child, enum SaveFlags flags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS SaveChangesAttachment </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj_parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj_child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">enum SaveFlags&nbsp;</td>
          <td class="paramname"> <em>flags</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Makes permanent any changes made to an attachment since the last save operation.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj_parent</em>&nbsp;</td><td>the parent of the object to save changes for </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>obj_child</em>&nbsp;</td><td>the object to save changes for </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>the access flags to set on the saved object</td></tr>
  </table>
  </dd>
</dl>
<p>Possible flags:</p>
<ul>
<li>KeepOpenReadOnly</li>
<li>KeepOpenReadWrite</li>
<li>ForceSave</li>
</ul>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a0ddd5dd9827db2d23d94440042abab37">SetProps</a>, <a class="el" href="proto_8h.html#a1166925df3bf36ba5bd3835d0917d1df">ModifyRecipients</a>, <a class="el" href="proto_8h.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
<a class="anchor" id="a0b8eb86418fa2470c59f3d1b0bf24c52"></a><!-- doxytag: member="IMAPIProp.c::SetPropertiesNoReplicate" ref="a0b8eb86418fa2470c59f3d1b0bf24c52" args="(mapi_object_t *obj, struct SPropValue *lpProps, unsigned long PropCount)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS SetPropertiesNoReplicate </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropValue *&nbsp;</td>
          <td class="paramname"> <em>lpProps</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>PropCount</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set one or more properties on a given object without invoking replication.</p>
<p>This function sets one or more properties on a specified object. It is the same as SetProps, except if the object is a folder, where this function does not result in folder properties being replicated.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to set properties on </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>lpProps</em>&nbsp;</td><td>the list of properties to set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>PropCount</em>&nbsp;</td><td>the number of properties</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_INVALID_PARAMETER: obj is not valid</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a0ddd5dd9827db2d23d94440042abab37">SetProps</a>, <a class="el" href="proto_8h.html#a65bbd0ee31de96fd372da08b3e2347e8">DeletePropertiesNoReplicate</a> </dd></dl>

<p>References <a class="el" href="property_8c.html#af478ffaa186d5c107c1374a0b41d344a">cast_mapi_SPropValue()</a>, <a class="el" href="structmapi__nameid.html#a8982a0ada9645b0af61dd0a9aa50b8d0">mapi_nameid::count</a>, <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="IMAPIProp_8c.html#ac7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__nameid_8c.html#a9d9381cc7e02705c8e638ada27d6ad57">mapi_nameid_lookup_SPropValue()</a>, <a class="el" href="mapi__nameid_8c.html#a6d5e2f646b696da66afcdf6632c293bf">mapi_nameid_map_SPropValue()</a>, <a class="el" href="mapi__nameid_8c.html#a7705209e3f79f856778b900123159f80">mapi_nameid_new()</a>, <a class="el" href="mapi__nameid_8c.html#a9429aa3e7cbb75a388fc5b1fc03cbec8">mapi_nameid_unmap_SPropValue()</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="IUnknown_8c.html#a52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>, <a class="el" href="structmapi__nameid.html#af801cad10b0bdef13e50aeeab2e8e08f">mapi_nameid::nameid</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
<a class="anchor" id="ac1a2bac380d3bec8aec51e883bbc4893"></a><!-- doxytag: member="IMAPIProp.c::SetProps" ref="ac1a2bac380d3bec8aec51e883bbc4893" args="(mapi_object_t *obj, struct SPropValue *lpProps, unsigned long PropCount)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">_PUBLIC_ enum MAPISTATUS SetProps </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structmapi__object.html">mapi_object_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct SPropValue *&nbsp;</td>
          <td class="paramname"> <em>lpProps</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>PropCount</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set one or more properties on a given object</p>
<p>This function sets one or more properties on a specified object.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>the object to set properties on </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>lpProps</em>&nbsp;</td><td>the list of properties to set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>PropCount</em>&nbsp;</td><td>the number of properties</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul>
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
</ul>
</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="proto_8h.html#a2302fd8484a99435dcf605f79cf9e8ba">GetProps</a>, <a class="el" href="proto_8h.html#aed96168262c4acfeab8d06ff35601aeb">GetPropList</a>, <a class="el" href="proto_8h.html#ae158380be31ef5121ebcccb99c5f980d">GetPropsAll</a>, <a class="el" href="proto_8h.html#a829a7a28788124c422e42d007b47e9e3">DeleteProps</a>, <a class="el" href="proto_8h.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="property_8c.html#af478ffaa186d5c107c1374a0b41d344a">cast_mapi_SPropValue()</a>, <a class="el" href="structmapi__nameid.html#a8982a0ada9645b0af61dd0a9aa50b8d0">mapi_nameid::count</a>, <a class="el" href="structmapi__provider.html#aa2906ad67334b042836f003e766d6d64">mapi_provider::ctx</a>, <a class="el" href="structmapi__session.html#a0d032340047573649b7527e660cac594">mapi_session::emsmdb</a>, <a class="el" href="emsmdb_8c.html#ae07f13624739ffff34e89ed3003a354e">emsmdb_transaction()</a>, <a class="el" href="IMAPIProp_8c.html#ac7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames()</a>, <a class="el" href="cdo__mapi_8c.html#aa3c2b68912988f290961037c76478495">global_mapi_ctx</a>, <a class="el" href="mapi__nameid_8c.html#a9d9381cc7e02705c8e638ada27d6ad57">mapi_nameid_lookup_SPropValue()</a>, <a class="el" href="mapi__nameid_8c.html#a6d5e2f646b696da66afcdf6632c293bf">mapi_nameid_map_SPropValue()</a>, <a class="el" href="mapi__nameid_8c.html#a7705209e3f79f856778b900123159f80">mapi_nameid_new()</a>, <a class="el" href="mapi__nameid_8c.html#a9429aa3e7cbb75a388fc5b1fc03cbec8">mapi_nameid_unmap_SPropValue()</a>, <a class="el" href="mapi__object_8c.html#aa94645f34e6c4bf1c0631dffb0742676">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c.html#a96bfa7545b6e9ad350c42ba0abd07da8">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>, <a class="el" href="IUnknown_8c.html#a52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>, <a class="el" href="structmapi__nameid.html#af801cad10b0bdef13e50aeeab2e8e08f">mapi_nameid::nameid</a>, <a class="el" href="mapicode_8h.html#a53da6d1258f2abd902930b6af1134d1c">OPENCHANGE_CHECK_NOTIFICATION</a>, and <a class="el" href="mapicode_8h.html#a72f77c7e5d097e7b47c57c0405070d0c">OPENCHANGE_RETVAL_IF</a>.</p>

</div>
</div>
</div>
</div>
<br/>
<table style="clear:both; margin: 0.5em auto; width:80%; text-align: center; background-color:#f8f8f8; border:2px solid #e0e0e0; padding:5px;">
<tr>
<td> 
  <img alt="Creative Commons License" src="CC_SomeRightsReserved.png" width="90" height="30" border="0" /><br />
  <img alt="Creative Commons Attribution icon" src="24px-Cc-by_white.svg.png" width="24" height="24" border="0" />
  <img alt="Creative Commons Share Alike icon" src="24px-Cc-sa_white.svg.png" width="24" height="24" border="0" />
</td>
<td> <i><strong class="selflink">This content</strong> is licensed under the Creative Commons<br />
Attribution ShareAlike License v. 3.0:<br />
<a href="http://creativecommons.org/licenses/by-sa/3.0/" class="external free" title="http://creativecommons.org/licenses/by-sa/3.0/" rel="nofollow">http://creativecommons.org/licenses/by-sa/3.0/</a></i>
</td></tr></table>
<br/>
</div>
</div>
</body>
</html>