3
<title>MAPIClientLibraries 2.0 API Documentation</title>
4
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
5
<link href="apidocs.css" rel="stylesheet" type="text/css"/>
9
<div class="header"></div>
10
<div id="middle_side">
11
<div id="right_side_home">
12
<!-- Generated by Doxygen 1.8.1.2 -->
13
<div id="navrow1" class="tabs">
15
<li><a href="index.html"><span>Main Page</span></a></li>
16
<li><a href="pages.html"><span>Related Pages</span></a></li>
17
<li><a href="annotated.html"><span>Data Structures</span></a></li>
18
<li class="current"><a href="files.html"><span>Files</span></a></li>
19
<li><a href="examples.html"><span>Examples</span></a></li>
22
<div id="navrow2" class="tabs2">
24
<li><a href="files.html"><span>File List</span></a></li>
25
<li><a href="globals.html"><span>Globals</span></a></li>
28
<div id="nav-path" class="navpath">
30
<li class="navelem"><a class="el" href="dir_f632a44caec7a90b6d38c87e3df284e5.html">libmapi</a></li> </ul>
35
<a href="#func-members">Functions</a> </div>
36
<div class="headertitle">
37
<div class="title">IMAPIProp.c File Reference</div> </div>
39
<div class="contents">
41
<p>Properties and named properties operations.
42
<a href="#details">More...</a></p>
43
<div class="textblock"><code>#include "libmapi/libmapi.h"</code><br/>
44
</div><table class="memberdecls">
45
<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
46
Functions</h2></td></tr>
47
<tr class="memitem:a5ee9cbd64423c52c3d40df8658bb4648"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a5ee9cbd64423c52c3d40df8658bb4648">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>
48
<tr class="memitem:afa8565f9bda2e4e522162fd851fead4f"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#afa8565f9bda2e4e522162fd851fead4f">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>
49
<tr class="memitem:a729ca053b8f7a3bd7c6a299559c26053"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a729ca053b8f7a3bd7c6a299559c26053">DeletePropertiesNoReplicate</a> (mapi_object_t *obj, struct SPropTagArray *proptags)</td></tr>
50
<tr class="memitem:ad7c939f4d2da811a8913e6563c9c98f3"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ad7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a> (mapi_object_t *obj, struct SPropTagArray *proptags)</td></tr>
51
<tr class="memitem:ac7a673fa38d4f737c5b1f8fa905f8155"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ac7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames</a> (mapi_object_t *obj, uint16_t count, struct MAPINAMEID *nameid, uint32_t ulFlags, struct SPropTagArray **proptags)</td></tr>
52
<tr class="memitem:a980b8bb8e01c3a4648b62add304db9a3"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a980b8bb8e01c3a4648b62add304db9a3">GetNamesFromIDs</a> (mapi_object_t *obj, enum MAPITAGS ulPropTag, uint16_t *count, struct MAPINAMEID **nameid)</td></tr>
53
<tr class="memitem:a20913af3ef18646635530f5bd8021061"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a20913af3ef18646635530f5bd8021061">GetPropList</a> (mapi_object_t *obj, struct SPropTagArray *proptags)</td></tr>
54
<tr class="memitem:ade217ac8248ec52af71705ae8df35d47"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ade217ac8248ec52af71705ae8df35d47">GetProps</a> (mapi_object_t *obj, uint32_t flags, struct SPropTagArray *SPropTagArray, struct SPropValue **lpProps, uint32_t *PropCount)</td></tr>
55
<tr class="memitem:afbe1c87d25b06d68a23d14443645f1b1"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#afbe1c87d25b06d68a23d14443645f1b1">GetPropsAll</a> (mapi_object_t *obj, uint32_t flags, struct mapi_SPropValue_array *properties)</td></tr>
56
<tr class="memitem:aa27de452605d7989c8c2686cee7780b7"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#aa27de452605d7989c8c2686cee7780b7">QueryNamedProperties</a> (mapi_object_t *obj, uint8_t queryFlags, struct GUID *guid, uint16_t *count, uint16_t **propID, struct MAPINAMEID **nameid)</td></tr>
57
<tr class="memitem:ac2ac74760d05cc2663b5a95c4d57e5e0"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#ac2ac74760d05cc2663b5a95c4d57e5e0">SaveChangesAttachment</a> (mapi_object_t *obj_parent, mapi_object_t *obj_child, enum SaveFlags flags)</td></tr>
58
<tr class="memitem:a5132fc4cccdbf65b9156fe1ae6bb187f"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a5132fc4cccdbf65b9156fe1ae6bb187f">SetPropertiesNoReplicate</a> (mapi_object_t *obj, uint32_t flags, struct SPropValue *lpProps, unsigned long PropCount)</td></tr>
59
<tr class="memitem:a493019f7bf3431d246b1e3a6b3114084"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMAPIProp_8c.html#a493019f7bf3431d246b1e3a6b3114084">SetProps</a> (mapi_object_t *obj, uint32_t flags, struct SPropValue *lpProps, unsigned long PropCount)</td></tr>
61
<a name="details" id="details"></a><h2>Detailed Description</h2>
62
<div class="textblock"><p>Properties and named properties operations. </p>
63
</div><h2>Function Documentation</h2>
64
<a class="anchor" id="a5ee9cbd64423c52c3d40df8658bb4648"></a>
66
<div class="memproto">
67
<table class="memname">
69
<td class="memname">_PUBLIC_ enum MAPISTATUS CopyProps </td>
71
<td class="paramtype">mapi_object_t * </td>
72
<td class="paramname"><em>obj_src</em>, </td>
75
<td class="paramkey"></td>
77
<td class="paramtype">mapi_object_t * </td>
78
<td class="paramname"><em>obj_dst</em>, </td>
81
<td class="paramkey"></td>
83
<td class="paramtype">struct SPropTagArray * </td>
84
<td class="paramname"><em>tags</em>, </td>
87
<td class="paramkey"></td>
89
<td class="paramtype">uint8_t </td>
90
<td class="paramname"><em>copyFlags</em>, </td>
93
<td class="paramkey"></td>
95
<td class="paramtype">uint16_t * </td>
96
<td class="paramname"><em>problemCount</em>, </td>
99
<td class="paramkey"></td>
101
<td class="paramtype">struct PropertyProblem ** </td>
102
<td class="paramname"><em>problems</em> </td>
110
</div><div class="memdoc">
111
<p>Copy properties from one object to another</p>
112
<p>This function copies (or moves) specified properties from one object to another.</p>
113
<dl class="params"><dt>Parameters</dt><dd>
114
<table class="params">
115
<tr><td class="paramname">obj_src</td><td>the object to copy properties from </td></tr>
116
<tr><td class="paramname">obj_dst</td><td>the object to set properties on </td></tr>
117
<tr><td class="paramname">copyFlags</td><td>flags to determine whether to copy or move, and whether to overwrite existing properties. </td></tr>
118
<tr><td class="paramname">tags</td><td>the list of properties to copy </td></tr>
119
<tr><td class="paramname">problemCount</td><td>(return value) number of entries in the problems array </td></tr>
120
<tr><td class="paramname">problems</td><td>(return value) array of problemCount entries.</td></tr>
124
<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>
125
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
126
<dl class="section note"><dt>Note</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>
127
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
128
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
131
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#ade217ac8248ec52af71705ae8df35d47">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#a493019f7bf3431d246b1e3a6b3114084">SetProps</a>, <a class="el" href="IMAPIProp_8c.html#ad7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a>, <a class="el" href="IMAPIProp_8c.html#afa8565f9bda2e4e522162fd851fead4f">CopyTo</a>, <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>
133
<p>References <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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
137
<a class="anchor" id="afa8565f9bda2e4e522162fd851fead4f"></a>
138
<div class="memitem">
139
<div class="memproto">
140
<table class="memname">
142
<td class="memname">_PUBLIC_ enum MAPISTATUS CopyTo </td>
144
<td class="paramtype">mapi_object_t * </td>
145
<td class="paramname"><em>obj_src</em>, </td>
148
<td class="paramkey"></td>
150
<td class="paramtype">mapi_object_t * </td>
151
<td class="paramname"><em>obj_dst</em>, </td>
154
<td class="paramkey"></td>
156
<td class="paramtype">struct SPropTagArray * </td>
157
<td class="paramname"><em>excludeTags</em>, </td>
160
<td class="paramkey"></td>
162
<td class="paramtype">uint8_t </td>
163
<td class="paramname"><em>copyFlags</em>, </td>
166
<td class="paramkey"></td>
168
<td class="paramtype">uint16_t * </td>
169
<td class="paramname"><em>problemCount</em>, </td>
172
<td class="paramkey"></td>
174
<td class="paramtype">struct PropertyProblem ** </td>
175
<td class="paramname"><em>problems</em> </td>
183
</div><div class="memdoc">
184
<p>Copy multiple properties from one object to another</p>
185
<p>This function copies (or moves) properties from one object to another. Unlike CopyProperties, this function copies all properties except those identified.</p>
186
<dl class="params"><dt>Parameters</dt><dd>
187
<table class="params">
188
<tr><td class="paramname">obj_src</td><td>the object to copy properties from </td></tr>
189
<tr><td class="paramname">obj_dst</td><td>the object to set properties on </td></tr>
190
<tr><td class="paramname">excludeTags</td><td>the list of properties to <em>not</em> copy </td></tr>
191
<tr><td class="paramname">copyFlags</td><td>flags to determine whether to copy or move, and whether to overwrite existing properties. </td></tr>
192
<tr><td class="paramname">problemCount</td><td>(return value) number of entries in the problems array </td></tr>
193
<tr><td class="paramname">problems</td><td>(return value) array of problemCount entries.</td></tr>
197
<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>
198
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
199
<dl class="section note"><dt>Note</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>
200
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
201
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
204
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#ade217ac8248ec52af71705ae8df35d47">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#a493019f7bf3431d246b1e3a6b3114084">SetProps</a>, <a class="el" href="IMAPIProp_8c.html#ad7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a>, <a class="el" href="IMAPIProp_8c.html#a5ee9cbd64423c52c3d40df8658bb4648">CopyProps</a> </dd></dl>
206
<p>References <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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
210
<a class="anchor" id="a729ca053b8f7a3bd7c6a299559c26053"></a>
211
<div class="memitem">
212
<div class="memproto">
213
<table class="memname">
215
<td class="memname">_PUBLIC_ enum MAPISTATUS DeletePropertiesNoReplicate </td>
217
<td class="paramtype">mapi_object_t * </td>
218
<td class="paramname"><em>obj</em>, </td>
221
<td class="paramkey"></td>
223
<td class="paramtype">struct SPropTagArray * </td>
224
<td class="paramname"><em>proptags</em> </td>
232
</div><div class="memdoc">
233
<p>Deletes property values from an object without invoking replication.</p>
234
<dl class="params"><dt>Parameters</dt><dd>
235
<table class="params">
236
<tr><td class="paramname">obj</td><td>the object to remove properties from </td></tr>
237
<tr><td class="paramname">proptags</td><td>the properties to remove from the given object</td></tr>
241
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
242
<dl class="section note"><dt>Note</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>
243
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
244
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
247
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#ad7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a> </dd></dl>
249
<p>References <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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
253
<a class="anchor" id="ad7c939f4d2da811a8913e6563c9c98f3"></a>
254
<div class="memitem">
255
<div class="memproto">
256
<table class="memname">
258
<td class="memname">_PUBLIC_ enum MAPISTATUS DeleteProps </td>
260
<td class="paramtype">mapi_object_t * </td>
261
<td class="paramname"><em>obj</em>, </td>
264
<td class="paramkey"></td>
266
<td class="paramtype">struct SPropTagArray * </td>
267
<td class="paramname"><em>proptags</em> </td>
275
</div><div class="memdoc">
276
<p>Delete one or more properties from an object</p>
277
<dl class="params"><dt>Parameters</dt><dd>
278
<table class="params">
279
<tr><td class="paramname">obj</td><td>the object to remove properties from </td></tr>
280
<tr><td class="paramname">proptags</td><td>the properties to remove from the given object</td></tr>
284
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
285
<dl class="section note"><dt>Note</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>
286
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
287
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
290
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#a493019f7bf3431d246b1e3a6b3114084">SetProps</a>, <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>
292
<p>References <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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
296
<a class="anchor" id="ac7a673fa38d4f737c5b1f8fa905f8155"></a>
297
<div class="memitem">
298
<div class="memproto">
299
<table class="memname">
301
<td class="memname">_PUBLIC_ enum MAPISTATUS GetIDsFromNames </td>
303
<td class="paramtype">mapi_object_t * </td>
304
<td class="paramname"><em>obj</em>, </td>
307
<td class="paramkey"></td>
309
<td class="paramtype">uint16_t </td>
310
<td class="paramname"><em>count</em>, </td>
313
<td class="paramkey"></td>
315
<td class="paramtype">struct MAPINAMEID * </td>
316
<td class="paramname"><em>nameid</em>, </td>
319
<td class="paramkey"></td>
321
<td class="paramtype">uint32_t </td>
322
<td class="paramname"><em>ulFlags</em>, </td>
325
<td class="paramkey"></td>
327
<td class="paramtype">struct SPropTagArray ** </td>
328
<td class="paramname"><em>proptags</em> </td>
336
</div><div class="memdoc">
337
<p>Provides the property identifiers that correspond to one or more property names.</p>
338
<dl class="params"><dt>Parameters</dt><dd>
339
<table class="params">
340
<tr><td class="paramname">obj</td><td>the object we are retrieving the identifiers from </td></tr>
341
<tr><td class="paramname">count</td><td>count of property names pointed to by the nameid parameter. </td></tr>
342
<tr><td class="paramname">nameid</td><td>pointer to an array of property names </td></tr>
343
<tr><td class="paramname">ulFlags</td><td>indicates how the property identifiers should be returned </td></tr>
344
<tr><td class="paramname">proptags</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>
348
<p>ulFlags can be set to:</p>
350
<li>0 retrieves named properties from the server</li>
351
<li>MAPI_CREATE create the named properties if they don't exist on the server</li>
353
<dl class="section note"><dt>Note</dt><dd>count and nameid parameter can automatically be built using the mapi_nameid API.</dd></dl>
354
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
355
<dl class="section note"><dt>Note</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>
356
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
357
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
360
<dl class="section see"><dt>See Also</dt><dd>GetNamesFromIds, QueryNamesFromIDs, <a class="el" href="mapi__nameid_8c.html#a7705209e3f79f856778b900123159f80">mapi_nameid_new</a> </dd></dl>
362
<p>References <a class="el" href="property_8c.html#a41cb1aa9af66195a07acea1d0f848a3a">get_utf8_utf16_conv_length()</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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
364
<p>Referenced by <a class="el" href="IMAPIProp_8c.html#ade217ac8248ec52af71705ae8df35d47">GetProps()</a>, <a class="el" href="mapi__nameid_8c.html#a6c24860883850bc1cb7acc5350dc6b4b">mapi_nameid_GetIDsFromNames()</a>, <a class="el" href="IMAPIProp_8c.html#a5132fc4cccdbf65b9156fe1ae6bb187f">SetPropertiesNoReplicate()</a>, and <a class="el" href="IMAPIProp_8c.html#a493019f7bf3431d246b1e3a6b3114084">SetProps()</a>.</p>
368
<a class="anchor" id="a980b8bb8e01c3a4648b62add304db9a3"></a>
369
<div class="memitem">
370
<div class="memproto">
371
<table class="memname">
373
<td class="memname">_PUBLIC_ enum MAPISTATUS GetNamesFromIDs </td>
375
<td class="paramtype">mapi_object_t * </td>
376
<td class="paramname"><em>obj</em>, </td>
379
<td class="paramkey"></td>
381
<td class="paramtype">enum MAPITAGS </td>
382
<td class="paramname"><em>ulPropTag</em>, </td>
385
<td class="paramkey"></td>
387
<td class="paramtype">uint16_t * </td>
388
<td class="paramname"><em>count</em>, </td>
391
<td class="paramkey"></td>
393
<td class="paramtype">struct MAPINAMEID ** </td>
394
<td class="paramname"><em>nameid</em> </td>
402
</div><div class="memdoc">
403
<p>Provides the property names that correspond to one or more property identifiers.</p>
404
<dl class="params"><dt>Parameters</dt><dd>
405
<table class="params">
406
<tr><td class="paramname">obj</td><td>the object we are retrieving the names from </td></tr>
407
<tr><td class="paramname">ulPropTag</td><td>the mapped property tag </td></tr>
408
<tr><td class="paramname">count</td><td>count of property names pointed to by the nameid parameter returned by the server </td></tr>
409
<tr><td class="paramname">nameid</td><td>pointer to a pointer to property names returned by the server</td></tr>
413
<p>ulPropTag must be a property with type set to PT_NULL</p>
414
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
415
<dl class="section note"><dt>Note</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>
416
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
417
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
420
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#ac7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames</a>, QueryNamesFromIDs </dd></dl>
422
<p>References <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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
426
<a class="anchor" id="a20913af3ef18646635530f5bd8021061"></a>
427
<div class="memitem">
428
<div class="memproto">
429
<table class="memname">
431
<td class="memname">_PUBLIC_ enum MAPISTATUS GetPropList </td>
433
<td class="paramtype">mapi_object_t * </td>
434
<td class="paramname"><em>obj</em>, </td>
437
<td class="paramkey"></td>
439
<td class="paramtype">struct SPropTagArray * </td>
440
<td class="paramname"><em>proptags</em> </td>
448
</div><div class="memdoc">
449
<p>Retrieve all the properties associated with a given object</p>
450
<dl class="params"><dt>Parameters</dt><dd>
451
<table class="params">
452
<tr><td class="paramname">obj</td><td>the object to retrieve properties for </td></tr>
453
<tr><td class="paramname">proptags</td><td>the resulting list of properties associated with the object</td></tr>
457
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
458
<dl class="section note"><dt>Note</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>
459
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
460
<li><p class="startli">MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</p>
461
<p class="startli">The developer MUST provide an allocated SPropTagArray structure to the function.</p>
465
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#ade217ac8248ec52af71705ae8df35d47">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#afbe1c87d25b06d68a23d14443645f1b1">GetPropsAll</a>, <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>
467
<p>References <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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
471
<a class="anchor" id="ade217ac8248ec52af71705ae8df35d47"></a>
472
<div class="memitem">
473
<div class="memproto">
474
<table class="memname">
476
<td class="memname">_PUBLIC_ enum MAPISTATUS GetProps </td>
478
<td class="paramtype">mapi_object_t * </td>
479
<td class="paramname"><em>obj</em>, </td>
482
<td class="paramkey"></td>
484
<td class="paramtype">uint32_t </td>
485
<td class="paramname"><em>flags</em>, </td>
488
<td class="paramkey"></td>
490
<td class="paramtype">struct SPropTagArray * </td>
491
<td class="paramname"><em>SPropTagArray</em>, </td>
494
<td class="paramkey"></td>
496
<td class="paramtype">struct SPropValue ** </td>
497
<td class="paramname"><em>lpProps</em>, </td>
500
<td class="paramkey"></td>
502
<td class="paramtype">uint32_t * </td>
503
<td class="paramname"><em>PropCount</em> </td>
511
</div><div class="memdoc">
512
<p>Returns values of one or more properties for an object</p>
513
<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>
514
<p>The array of MAPI property tags can be filled with both known and named properties.</p>
515
<dl class="params"><dt>Parameters</dt><dd>
516
<table class="params">
517
<tr><td class="paramname">obj</td><td>the object to get properties on </td></tr>
518
<tr><td class="paramname">flags</td><td>Flags for behaviour; can be bit-OR of MAPI_UNICODE and MAPI_PROPS_SKIP_NAMEDID_CHECK constants </td></tr>
519
<tr><td class="paramname">SPropTagArray</td><td>an array of MAPI property tags </td></tr>
520
<tr><td class="paramname">lpProps</td><td>the result of the query </td></tr>
521
<tr><td class="paramname">PropCount</td><td>the count of property tags</td></tr>
525
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
526
<dl class="section note"><dt>Note</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>
527
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
528
<li>MAPI_E_INVALID_PARAMETER: obj or SPropTagArray are null, or the session context could not be obtained</li>
529
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
532
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#a493019f7bf3431d246b1e3a6b3114084">SetProps</a>, <a class="el" href="IMAPIProp_8c.html#a20913af3ef18646635530f5bd8021061">GetPropList</a>, <a class="el" href="IMAPIProp_8c.html#afbe1c87d25b06d68a23d14443645f1b1">GetPropsAll</a>, <a class="el" href="IMAPIProp_8c.html#ad7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a>, <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>
534
<p>References <a class="el" href="emsmdb_8c.html#ac88ab5dc715b30732166cfef14cb1dd8">emsmdb_get_SPropValue()</a>, <a class="el" href="IMAPIProp_8c.html#ac7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames()</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>, and <a class="el" href="IUnknown_8c.html#a52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>.</p>
536
<p>Referenced by <a class="el" href="utils_8c.html#a01d9de5c2de79ccdc0aa9a8a482e8a32">EntryIDFromSourceIDForMessage()</a>, <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="freebusy_8c.html#ab96741fc9618726a6eedc08c8813671e">GetUserFreeBusyData()</a>.</p>
540
<a class="anchor" id="afbe1c87d25b06d68a23d14443645f1b1"></a>
541
<div class="memitem">
542
<div class="memproto">
543
<table class="memname">
545
<td class="memname">_PUBLIC_ enum MAPISTATUS GetPropsAll </td>
547
<td class="paramtype">mapi_object_t * </td>
548
<td class="paramname"><em>obj</em>, </td>
551
<td class="paramkey"></td>
553
<td class="paramtype">uint32_t </td>
554
<td class="paramname"><em>flags</em>, </td>
557
<td class="paramkey"></td>
559
<td class="paramtype">struct mapi_SPropValue_array * </td>
560
<td class="paramname"><em>properties</em> </td>
568
</div><div class="memdoc">
569
<p>Retrieve all properties and values associated with an object</p>
570
<p>This function returns all the properties and and associated values for a given object.</p>
571
<dl class="params"><dt>Parameters</dt><dd>
572
<table class="params">
573
<tr><td class="paramname">obj</td><td>the object to get the properties for </td></tr>
574
<tr><td class="paramname">flags</td><td>Flags for behaviour; can be a MAPI_UNICODE constant </td></tr>
575
<tr><td class="paramname">properties</td><td>the properties / values for the object</td></tr>
579
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
580
<dl class="section note"><dt>Note</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>
581
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
582
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
585
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#ade217ac8248ec52af71705ae8df35d47">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#a20913af3ef18646635530f5bd8021061">GetPropList</a>, <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>
586
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="fetchappointment_8c-example.html#a14">fetchappointment.c</a>, and <a class="el" href="fetchmail_8c-example.html#a14">fetchmail.c</a>.</dd>
588
<p>References <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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
592
<a class="anchor" id="aa27de452605d7989c8c2686cee7780b7"></a>
593
<div class="memitem">
594
<div class="memproto">
595
<table class="memname">
597
<td class="memname">_PUBLIC_ enum MAPISTATUS QueryNamedProperties </td>
599
<td class="paramtype">mapi_object_t * </td>
600
<td class="paramname"><em>obj</em>, </td>
603
<td class="paramkey"></td>
605
<td class="paramtype">uint8_t </td>
606
<td class="paramname"><em>queryFlags</em>, </td>
609
<td class="paramkey"></td>
611
<td class="paramtype">struct GUID * </td>
612
<td class="paramname"><em>guid</em>, </td>
615
<td class="paramkey"></td>
617
<td class="paramtype">uint16_t * </td>
618
<td class="paramname"><em>count</em>, </td>
621
<td class="paramkey"></td>
623
<td class="paramtype">uint16_t ** </td>
624
<td class="paramname"><em>propID</em>, </td>
627
<td class="paramkey"></td>
629
<td class="paramtype">struct MAPINAMEID ** </td>
630
<td class="paramname"><em>nameid</em> </td>
638
</div><div class="memdoc">
639
<p>Provides the property names that correspond to one or more property identifiers.</p>
640
<dl class="params"><dt>Parameters</dt><dd>
641
<table class="params">
642
<tr><td class="paramname">obj</td><td>the object to obtain the properties for </td></tr>
643
<tr><td class="paramname">queryFlags</td><td>A set of flags that can restrict the type of properties </td></tr>
644
<tr><td class="paramname">guid</td><td>a pointer to the GUID for the property set to fetch (null for all property sets. </td></tr>
645
<tr><td class="paramname">count</td><td>count of property names pointed to by the nameid and propID parameters returned by the server </td></tr>
646
<tr><td class="paramname">propID</td><td>pointer to an array of property IDs returned by the server </td></tr>
647
<tr><td class="paramname">nameid</td><td>pointer to an array of property names returned by the server</td></tr>
651
<dl class="section note"><dt>Note</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>
652
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
653
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#a980b8bb8e01c3a4648b62add304db9a3">GetNamesFromIDs</a> </dd></dl>
655
<p>References <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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
659
<a class="anchor" id="ac2ac74760d05cc2663b5a95c4d57e5e0"></a>
660
<div class="memitem">
661
<div class="memproto">
662
<table class="memname">
664
<td class="memname">_PUBLIC_ enum MAPISTATUS SaveChangesAttachment </td>
666
<td class="paramtype">mapi_object_t * </td>
667
<td class="paramname"><em>obj_parent</em>, </td>
670
<td class="paramkey"></td>
672
<td class="paramtype">mapi_object_t * </td>
673
<td class="paramname"><em>obj_child</em>, </td>
676
<td class="paramkey"></td>
678
<td class="paramtype">enum SaveFlags </td>
679
<td class="paramname"><em>flags</em> </td>
687
</div><div class="memdoc">
688
<p>Makes permanent any changes made to an attachment since the last save operation.</p>
689
<dl class="params"><dt>Parameters</dt><dd>
690
<table class="params">
691
<tr><td class="paramname">obj_parent</td><td>the parent of the object to save changes for </td></tr>
692
<tr><td class="paramname">obj_child</td><td>the object to save changes for </td></tr>
693
<tr><td class="paramname">flags</td><td>the access flags to set on the saved object</td></tr>
697
<p>Possible flags:</p>
699
<li>KeepOpenReadOnly</li>
700
<li>KeepOpenReadWrite</li>
703
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
704
<dl class="section note"><dt>Note</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>
705
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
706
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
709
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#a493019f7bf3431d246b1e3a6b3114084">SetProps</a>, <a class="el" href="IMessage_8c.html#a2631355714b42d3d972113372c5175e0">ModifyRecipients</a>, <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>
711
<p>References <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>, and <a class="el" href="mapi__object_8c.html#ae5ef3137838fbc0c3eaedd7da99f8adc">mapi_object_get_session()</a>.</p>
715
<a class="anchor" id="a5132fc4cccdbf65b9156fe1ae6bb187f"></a>
716
<div class="memitem">
717
<div class="memproto">
718
<table class="memname">
720
<td class="memname">_PUBLIC_ enum MAPISTATUS SetPropertiesNoReplicate </td>
722
<td class="paramtype">mapi_object_t * </td>
723
<td class="paramname"><em>obj</em>, </td>
726
<td class="paramkey"></td>
728
<td class="paramtype">uint32_t </td>
729
<td class="paramname"><em>flags</em>, </td>
732
<td class="paramkey"></td>
734
<td class="paramtype">struct SPropValue * </td>
735
<td class="paramname"><em>lpProps</em>, </td>
738
<td class="paramkey"></td>
740
<td class="paramtype">unsigned long </td>
741
<td class="paramname"><em>PropCount</em> </td>
749
</div><div class="memdoc">
750
<p>Set one or more properties on a given object without invoking replication.</p>
751
<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>
752
<dl class="params"><dt>Parameters</dt><dd>
753
<table class="params">
754
<tr><td class="paramname">obj</td><td>the object to set properties on </td></tr>
755
<tr><td class="paramname">flags</td><td>Flags for behaviour; can be MAPI_PROPS_SKIP_NAMEDID_CHECK </td></tr>
756
<tr><td class="paramname">lpProps</td><td>the list of properties to set </td></tr>
757
<tr><td class="paramname">PropCount</td><td>the number of properties</td></tr>
761
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
762
<dl class="section note"><dt>Note</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>
763
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
764
<li>MAPI_E_INVALID_PARAMETER: obj is not valid</li>
765
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
768
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#a493019f7bf3431d246b1e3a6b3114084">SetProps</a>, <a class="el" href="IMAPIProp_8c.html#a729ca053b8f7a3bd7c6a299559c26053">DeletePropertiesNoReplicate</a> </dd></dl>
770
<p>References <a class="el" href="property_8c.html#a70f67e9d21b97a881b56f3b44b2dd282">cast_mapi_SPropValue()</a>, <a class="el" href="IMAPIProp_8c.html#ac7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames()</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>, and <a class="el" href="IUnknown_8c.html#a52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>.</p>
774
<a class="anchor" id="a493019f7bf3431d246b1e3a6b3114084"></a>
775
<div class="memitem">
776
<div class="memproto">
777
<table class="memname">
779
<td class="memname">_PUBLIC_ enum MAPISTATUS SetProps </td>
781
<td class="paramtype">mapi_object_t * </td>
782
<td class="paramname"><em>obj</em>, </td>
785
<td class="paramkey"></td>
787
<td class="paramtype">uint32_t </td>
788
<td class="paramname"><em>flags</em>, </td>
791
<td class="paramkey"></td>
793
<td class="paramtype">struct SPropValue * </td>
794
<td class="paramname"><em>lpProps</em>, </td>
797
<td class="paramkey"></td>
799
<td class="paramtype">unsigned long </td>
800
<td class="paramname"><em>PropCount</em> </td>
808
</div><div class="memdoc">
809
<p>Set one or more properties on a given object</p>
810
<p>This function sets one or more properties on a specified object.</p>
811
<dl class="params"><dt>Parameters</dt><dd>
812
<table class="params">
813
<tr><td class="paramname">obj</td><td>the object to set properties on </td></tr>
814
<tr><td class="paramname">flags</td><td>Flags for behaviour; can be MAPI_PROPS_SKIP_NAMEDID_CHECK </td></tr>
815
<tr><td class="paramname">lpProps</td><td>the list of properties to set </td></tr>
816
<tr><td class="paramname">PropCount</td><td>the number of properties</td></tr>
820
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl>
821
<dl class="section note"><dt>Note</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>
822
<li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li>
823
<li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li>
826
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="IMAPIProp_8c.html#ade217ac8248ec52af71705ae8df35d47">GetProps</a>, <a class="el" href="IMAPIProp_8c.html#a20913af3ef18646635530f5bd8021061">GetPropList</a>, <a class="el" href="IMAPIProp_8c.html#afbe1c87d25b06d68a23d14443645f1b1">GetPropsAll</a>, <a class="el" href="IMAPIProp_8c.html#ad7c939f4d2da811a8913e6563c9c98f3">DeleteProps</a>, <a class="el" href="IUnknown_8c.html#a8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl>
828
<p>References <a class="el" href="property_8c.html#a70f67e9d21b97a881b56f3b44b2dd282">cast_mapi_SPropValue()</a>, <a class="el" href="IMAPIProp_8c.html#ac7a673fa38d4f737c5b1f8fa905f8155">GetIDsFromNames()</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>, and <a class="el" href="IUnknown_8c.html#a52246b3bbc755db550d9d13e772dd479">MAPIFreeBuffer()</a>.</p>
832
</div><!-- contents -->
835
<table style="clear:both; margin: 0.5em auto; width:80%; text-align: center; background-color:#f8f8f8; border:2px solid #e0e0e0; padding:5px;">
838
<img alt="Creative Commons License" src="CC_SomeRightsReserved.png" width="90" height="30" border="0" /><br />
839
<img alt="Creative Commons Attribution icon" src="24px-Cc-by_white.svg.png" width="24" height="24" border="0" />
840
<img alt="Creative Commons Share Alike icon" src="24px-Cc-sa_white.svg.png" width="24" height="24" border="0" />
842
<td> <i><strong class="selflink">This content</strong> is licensed under the Creative Commons<br />
843
Attribution ShareAlike License v. 3.0:<br />
844
<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>