Sophie

Sophie

distrib > * > 2010.0 > * > by-pkgid > 943b1476818e5ec34d7058ed3b879448 > files > 81

libmapi-devel-0.8.2-1.1481.3mdv2010.0.i586.rpm

<html>
  <head>
    <title>MAPIClientLibraries 0.8 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.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <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="tabs">
    <ul>
      <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="contents">
<h1>libmapi/IMAPIProp.c File Reference</h1>Properties and named properties operations.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;libmapi/libmapi.h&gt;</code><br>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#5ee9cbd64423c52c3d40df8658bb4648">CopyProps</a> (mapi_object_t *obj_src, mapi_object_t *obj_dst, struct SPropTagArray *tags, uint8_t copyFlags, uint16_t *problemCount, struct PropertyProblem **problems)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#fa8565f9bda2e4e522162fd851fead4f">CopyTo</a> (mapi_object_t *obj_src, mapi_object_t *obj_dst, struct SPropTagArray *excludeTags, uint8_t copyFlags, uint16_t *problemCount, struct PropertyProblem **problems)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#729ca053b8f7a3bd7c6a299559c26053">DeletePropertiesNoReplicate</a> (mapi_object_t *obj, struct SPropTagArray *proptags)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#d7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a> (mapi_object_t *obj, struct SPropTagArray *proptags)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#c7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames</a> (mapi_object_t *obj, uint16_t count, struct MAPINAMEID *nameid, uint32_t ulFlags, struct SPropTagArray **proptags)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#980b8bb8e01c3a4648b62add304db9a3">GetNamesFromIDs</a> (mapi_object_t *obj, enum MAPITAGS ulPropTag, uint16_t *count, struct MAPINAMEID **nameid)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#20913af3ef18646635530f5bd8021061">GetPropList</a> (mapi_object_t *obj, struct SPropTagArray *proptags)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#d71fddaae9ab98871ffe4fec3938a704">GetProps</a> (mapi_object_t *obj, struct SPropTagArray *SPropTagArray, struct SPropValue **lpProps, uint32_t *PropCount)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#e216a092d1517c67db706536631404ff">GetPropsAll</a> (mapi_object_t *obj, struct mapi_SPropValue_array *properties)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a27de452605d7989c8c2686cee7780b7">QueryNamedProperties</a> (mapi_object_t *obj, uint8_t queryFlags, struct GUID *guid, uint16_t *count, uint16_t **propID, struct MAPINAMEID **nameid)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#c2ac74760d05cc2663b5a95c4d57e5e0">SaveChangesAttachment</a> (mapi_object_t *obj_parent, mapi_object_t *obj_child, enum SaveFlags flags)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#0b8eb86418fa2470c59f3d1b0bf24c52">SetPropertiesNoReplicate</a> (mapi_object_t *obj, struct SPropValue *lpProps, unsigned long PropCount)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#c1a2bac380d3bec8aec51e883bbc4893">SetProps</a> (mapi_object_t *obj, struct SPropValue *lpProps, unsigned long PropCount)</td></tr>

</table>
<hr><h2>Detailed Description</h2>
Properties and named properties operations. 
<p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="5ee9cbd64423c52c3d40df8658bb4648"></a><!-- doxytag: member="IMAPIProp.c::CopyProps" ref="5ee9cbd64423c52c3d40df8658bb4648" 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">mapi_object_t *&nbsp;</td>
          <td class="paramname"> <em>obj_src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mapi_object_t *&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>
This function copies (or moves) specified properties from one object to another.<p>
<dl compact><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>
</dl>
The caller is responsible for freeing the <b>problems</b> array using <a class="el" href="IUnknown_8c.html#52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>. If the <b>problemCount</b> pointer is NULL, then the problems array will not be returned.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#d71fddaae9ab98871ffe4fec3938a704">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#c1a2bac380d3bec8aec51e883bbc4893">SetProps</a>, <a class="el" href="IMAPIProp_8c.html#d7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a>, <a class="el" href="IMAPIProp_8c.html#fa8565f9bda2e4e522162fd851fead4f">CopyTo</a>, <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

</div>
</div><p>
<a class="anchor" name="fa8565f9bda2e4e522162fd851fead4f"></a><!-- doxytag: member="IMAPIProp.c::CopyTo" ref="fa8565f9bda2e4e522162fd851fead4f" 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">mapi_object_t *&nbsp;</td>
          <td class="paramname"> <em>obj_src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mapi_object_t *&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>
This function copies (or moves) properties from one object to another. Unlike CopyProperties, this function copies all properties except those identified.<p>
<dl compact><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>
</dl>
The caller is responsible for freeing the <b>problems</b> array using <a class="el" href="IUnknown_8c.html#52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>. If the <b>problemCount</b> pointer is NULL, then the problems array will not be returned.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#d71fddaae9ab98871ffe4fec3938a704">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#c1a2bac380d3bec8aec51e883bbc4893">SetProps</a>, <a class="el" href="IMAPIProp_8c.html#d7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a>, <a class="el" href="IMAPIProp_8c.html#5ee9cbd64423c52c3d40df8658bb4648">CopyProps</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

</div>
</div><p>
<a class="anchor" name="729ca053b8f7a3bd7c6a299559c26053"></a><!-- doxytag: member="IMAPIProp.c::DeletePropertiesNoReplicate" ref="729ca053b8f7a3bd7c6a299559c26053" 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">mapi_object_t *&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 compact><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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#d7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d7c939f4d2da811a8913e6563c9c98f3"></a><!-- doxytag: member="IMAPIProp.c::DeleteProps" ref="d7c939f4d2da811a8913e6563c9c98f3" 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">mapi_object_t *&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 compact><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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#c1a2bac380d3bec8aec51e883bbc4893">SetProps</a>, <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

</div>
</div><p>
<a class="anchor" name="c7a673fa38d4f737c5b1f8fa905f8155"></a><!-- doxytag: member="IMAPIProp.c::GetIDsFromNames" ref="c7a673fa38d4f737c5b1f8fa905f8155" 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">mapi_object_t *&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 compact><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>
</dl>
ulFlags can be set to:<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>
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>count and nameid parameter can automatically be built using the mapi_nameid API.</dd></dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#c7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames</a>, QueryNamesFromIDs, <a class="el" href="mapi__nameid_8c.html#7705209e3f79f856778b900123159f80">mapi_nameid_new</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

<p>Referenced by <a class="el" href="IMAPIProp_8c_source.html#l00059">GetProps()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00852">mapi_nameid_GetIDsFromNames()</a>, <a class="el" href="IMAPIProp_8c_source.html#l00627">SetPropertiesNoReplicate()</a>, and <a class="el" href="IMAPIProp_8c_source.html#l00181">SetProps()</a>.</p>

</div>
</div><p>
<a class="anchor" name="980b8bb8e01c3a4648b62add304db9a3"></a><!-- doxytag: member="IMAPIProp.c::GetNamesFromIDs" ref="980b8bb8e01c3a4648b62add304db9a3" 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">mapi_object_t *&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 compact><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>
</dl>
ulPropTag must be a property with type set to PT_NULL<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#c7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames</a>, QueryNamesFromIDs </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

</div>
</div><p>
<a class="anchor" name="20913af3ef18646635530f5bd8021061"></a><!-- doxytag: member="IMAPIProp.c::GetPropList" ref="20913af3ef18646635530f5bd8021061" 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">mapi_object_t *&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 compact><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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#d71fddaae9ab98871ffe4fec3938a704">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#e216a092d1517c67db706536631404ff">GetPropsAll</a>, <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d71fddaae9ab98871ffe4fec3938a704"></a><!-- doxytag: member="IMAPIProp.c::GetProps" ref="d71fddaae9ab98871ffe4fec3938a704" 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">mapi_object_t *&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>
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>
The array of MAPI property tags can be filled with both known and named properties.<p>
<dl compact><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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#c1a2bac380d3bec8aec51e883bbc4893">SetProps</a>, <a class="el" href="IMAPIProp_8c.html#20913af3ef18646635530f5bd8021061">GetPropList</a>, <a class="el" href="IMAPIProp_8c.html#e216a092d1517c67db706536631404ff">GetPropsAll</a>, <a class="el" href="IMAPIProp_8c.html#d7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a>, <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00665">emsmdb_get_SPropValue()</a>, <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="IMAPIProp_8c_source.html#l00922">GetIDsFromNames()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00761">mapi_nameid_lookup_SPropTagArray()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00593">mapi_nameid_map_SPropTagArray()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00043">mapi_nameid_new()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00636">mapi_nameid_unmap_SPropTagArray()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>, and <a class="el" href="IUnknown_8c_source.html#l00082">MAPIFreeBuffer()</a>.</p>

<p>Referenced by <a class="el" href="simple__mapi_8c_source.html#l00744">GetBestBody()</a>, <a class="el" href="simple__mapi_8c_source.html#l00388">GetFolderItemsCount()</a>, and <a class="el" href="freebusy_8c_source.html#l00057">GetUserFreeBusyData()</a>.</p>

</div>
</div><p>
<a class="anchor" name="e216a092d1517c67db706536631404ff"></a><!-- doxytag: member="IMAPIProp.c::GetPropsAll" ref="e216a092d1517c67db706536631404ff" 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">mapi_object_t *&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>
This function returns all the properties and and associated values for a given object.<p>
<dl compact><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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#d71fddaae9ab98871ffe4fec3938a704">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#20913af3ef18646635530f5bd8021061">GetPropList</a>, <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>
<dl compact><dt><b>Examples: </b></dt><dd>
<a class="el" href="fetchappointment_8c-example.html#a13">fetchappointment.c</a>, and <a class="el" href="fetchmail_8c-example.html#a13">fetchmail.c</a>.</dl>
<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

</div>
</div><p>
<a class="anchor" name="a27de452605d7989c8c2686cee7780b7"></a><!-- doxytag: member="IMAPIProp.c::QueryNamedProperties" ref="a27de452605d7989c8c2686cee7780b7" 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">mapi_object_t *&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 compact><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>
</dl>
<dl class="note" compact><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" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#980b8bb8e01c3a4648b62add304db9a3">GetNamesFromIDs</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

</div>
</div><p>
<a class="anchor" name="c2ac74760d05cc2663b5a95c4d57e5e0"></a><!-- doxytag: member="IMAPIProp.c::SaveChangesAttachment" ref="c2ac74760d05cc2663b5a95c4d57e5e0" 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">mapi_object_t *&nbsp;</td>
          <td class="paramname"> <em>obj_parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mapi_object_t *&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 compact><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>
</dl>
Possible flags:<ul>
<li>KeepOpenReadOnly</li><li>KeepOpenReadWrite</li><li>ForceSave</li></ul>
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#c1a2bac380d3bec8aec51e883bbc4893">SetProps</a>, <a class="el" href="IMessage_8c.html#2631355714b42d3d972113372c5175e0">ModifyRecipients</a>, <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, and <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>.</p>

</div>
</div><p>
<a class="anchor" name="0b8eb86418fa2470c59f3d1b0bf24c52"></a><!-- doxytag: member="IMAPIProp.c::SetPropertiesNoReplicate" ref="0b8eb86418fa2470c59f3d1b0bf24c52" 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">mapi_object_t *&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>
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 compact><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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#c1a2bac380d3bec8aec51e883bbc4893">SetProps</a>, <a class="el" href="IMAPIProp_8c.html#729ca053b8f7a3bd7c6a299559c26053">DeletePropertiesNoReplicate</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="IMAPIProp_8c_source.html#l00922">GetIDsFromNames()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00808">mapi_nameid_lookup_SPropValue()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00675">mapi_nameid_map_SPropValue()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00043">mapi_nameid_new()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00721">mapi_nameid_unmap_SPropValue()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>, and <a class="el" href="IUnknown_8c_source.html#l00082">MAPIFreeBuffer()</a>.</p>

</div>
</div><p>
<a class="anchor" name="c1a2bac380d3bec8aec51e883bbc4893"></a><!-- doxytag: member="IMAPIProp.c::SetProps" ref="c1a2bac380d3bec8aec51e883bbc4893" 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">mapi_object_t *&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>
This function sets one or more properties on a specified object.<p>
<dl compact><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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">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" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPIProp_8c.html#d71fddaae9ab98871ffe4fec3938a704">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#20913af3ef18646635530f5bd8021061">GetPropList</a>, <a class="el" href="IMAPIProp_8c.html#e216a092d1517c67db706536631404ff">GetPropsAll</a>, <a class="el" href="IMAPIProp_8c.html#d7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a>, <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>

<p>References <a class="el" href="emsmdb_8c_source.html#l00283">emsmdb_transaction()</a>, <a class="el" href="IMAPIProp_8c_source.html#l00922">GetIDsFromNames()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00808">mapi_nameid_lookup_SPropValue()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00675">mapi_nameid_map_SPropValue()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00043">mapi_nameid_new()</a>, <a class="el" href="mapi__nameid_8c_source.html#l00721">mapi_nameid_unmap_SPropValue()</a>, <a class="el" href="mapi__object_8c_source.html#l00264">mapi_object_get_handle()</a>, <a class="el" href="mapi__object_8c_source.html#l00238">mapi_object_get_logon_id()</a>, <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>, and <a class="el" href="IUnknown_8c_source.html#l00082">MAPIFreeBuffer()</a>.</p>

</div>
</div><p>
</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>