Platform SDK: MAPI

ITnef::SetProps

The ITnef::SetProps method sets the value of one or more properties for an encapsulated message or attachment without modifying the original message or attachment.

Quick Info

See ITnef : IUnknown.

HRESULT SetProps(
  ULONG ulFlags,        
  ULONG ulElemID,       
  ULONG cValues,        
  LPSPropValue lpProps  
);
 

Parameters

ulFlags
[in] Bitmask of flags that controls how properties' values are set. The following flag can be set:
TNEF_PROP_CONTAINED
Encodes only properties from the message or attachment specified by the ulElemID parameter.
ulElemID
[in] An attachment's PR_ATTACH_NUM property, which holds a number that uniquely identifies the attachment within its parent message.
cValues
[in] Number of property values in the SPropValue structure pointed to by the lpProps parameter.
lpProps
[in] Pointer to an SPropValue structure containing the property values of the properties to set.

Return Values

S_OK
The call succeeded and has returned the expected value or values.

Remarks

Transport providers, message store providers, and gateways call the ITnef::SetProps method to set properties to include in the encapsulation of a message or an attachment without modifying the original message or attachment. Any properties set with this call override existing properties in the encapsulated message.

SetProps is only supported for TNEF objects opened with the TNEF_ENCODE flag for the OpenTnefStream or OpenTnefStreamEx function. Any number of properties can be set with this call.

Note that no actual TNEF encoding for SetProps happens until after the ITnef::Finish method is called. This functionality means that pointers passed into SetProps must remain valid until after the call to Finish is made. At that point, all objects and data passed into SetProps calls can be released or freed.

See Also

ITnef::Finish, OpenTnefStream, OpenTnefStreamEx, PR_ATTACH_NUM, SPropValue