Home COM GDI+ WebBrowser Data Access

ITnef Interface

 

IID_ITnef

{00020319-0000-0000-C000-000000000046}

 

 

The ITnef interface provides methods for encapsulating those MAPI properties not supported by a messaging system into binary streams that can be attached to messages. The format used for this encapsulation is Transport-Neutral Encapsulation Format (TNEF). The target transport provider or MAPI-based client application can then, on receiving a message including a TNEF attachment, recover the properties from the attachment.

 

 

Methods in VTable order

IUnknown Methods

Description

QueryInterface

Returns pointers to supported interfaces.

AddRef

Increments reference count.

Release

Decrements reference count.

ITnef Methods

Description

AddProps

Allows the calling service provider or gateway to add properties to the TNEF encapsulation.

ExtractProps

Extracts the properties from a TNEF encapsulation.

Finish

Finishes processing for all TNEF operations that are queued and waiting.

OpenTaggedBody

Opens a stream interface on the text of an encapsulated message.

SetProps

Sets the value of one or more properties for an encapsulated message or attachment without modifying the original message or attachment.

EncodeRecips

Encodes a message's recipient table into the TNEF data stream for the message.

FinishComponent

Processes individual components from a message one at a time into a TNEF stream.

 

AddProps

 

FUNCTION ITnef_AddProps ( _
  BYVAL pITnef AS DWORD PTR _
, BYVAL ulFlags AS DWORD _
, BYVAL ulElemID AS DWORD _
, BYVAL lpvData AS DWORD _
, BYVAL lpPropList AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pITnef[3] USING ITnef_AddProps (pITnef, ulFlags, ulElemID, lpvData, lpPropList) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

ExtractProps

 

FUNCTION ITnef_ExtractProps ( _
  BYVAL pITnef AS DWORD PTR _
, BYVAL ulFlags AS DWORD _
, BYVAL lpPropList AS DWORD _
, BYREF lpProblems AS STnefProblemArray _
  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pITnef[4] USING ITnef_ExtractProps (pITnef, ulFlags, lpPropList, lpProblems) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

Finish

 

FUNCTION ITnef_Finish ( _
  BYVAL pITnef AS DWORD PTR _
, BYVAL ulFlags AS DWORD _
, BYREF lpKey AS DWORD _
, BYREF lpProblem AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pITnef[5] USING ITnef_Finish (pITnef, ulFlags, lpKey, lpProblem) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

OpenTaggedBody

 

FUNCTION ITnef_OpenTaggedBody ( _
  BYVAL pITnef AS DWORD PTR _
, BYVAL lpMessage AS DWORD _
, BYVAL ulFlags AS DWORD _
, BYREF lppStream AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pITnef[6] USING ITnef_OpenTaggedBody (pITnef, lpMessage, ulFlags, lppStream) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

SetProps

 

FUNCTION ITnef_SetProps ( _
  BYVAL pITnef AS DWORD PTR _
, BYVAL ulFlags AS DWORD _
, BYVAL ulElemID AS DWORD _
, BYVAL cValues AS DWORD _
, BYREF lpProps AS SPropValue _
  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pITnef[7] USING ITnef_SetProps (pITnef, ulFlags, ulElemID, cValues, lpProps) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

EncodeRecips

 

FUNCTION ITnef_EncodeRecips ( _
  BYVAL pITnef AS DWORD PTR _
, BYVAL ulFlags AS DWORD _
, BYVAL lpRecipientTable AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pITnef[8] USING ITnef_EncodeRecips (pITnef, ulFlags, lpRecipientTable) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

FinishComponent

 

FUNCTION ITnef_FinishComponent ( _
  BYVAL pITnef AS DWORD PTR _
, BYVAL ulFlags AS DWORD _
, BYVAL lpRecipientTable AS DWORD _
, BYREF lpCustomPropList AS SPropTagArray _
, BYREF lpCustomProps AS SPropValue _
, BYREF lpPropList AS SPropTagArray _
, BYREF lppProblems AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pITnef[9] USING ITnef_FinishComponent (pITnef, ulFlags, lpRecipientTable, lpCustomPropList, lpCustomProps, lpPropList, lppProblems) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

Page last updated on Monday, 03 April 2006 20:19:08 +0200