Unit Tnef

++ t n e f . p a s Abstract: Automatic conversion of tnef.h. Comments: This source file automatically converted by htrans 0.91 beta 1 Copyright (c) 1997 Alexander Staubo Revision history: 18-06-1997 20:53 alex [Autogenerated] 18-06-1997 20:53 alex Retouched for release --

Classes

ITnef -

Functions

GetTnefStreamCodepage -
OpenTnefStream - PR_RESPONSE_REQUESTED
OpenTnefStreamEx -

Types

PADDRALIAS
PGETTNEFSTREAMCODEPAGE
PNSID
POPENTNEFSTREAM
POPENTNEFSTREAMEX
PSTnefProblemArray
PTRP
TADDRALIAS
TATYP
TDTR
TNSID
TOPENTNEFSTREAM
TOPENTNEFSTREAMEX
TPGRTRP
TPRENDDATA
TPTRP
TRENDDATA
TSTnefProblem
TSTnefProblemArray
TTRP
TXTYPE

Constants

atpByte
atpDate
atpDword
atpLong
atpMax
atpShort
atpString
atpText
atpTriples
atpWord
attAidOwner
attAttachCreateDate
attAttachData
attAttachment
attAttachMetaFile
attAttachModifyDate
attAttachRenddata
attAttachTitle
attAttachTransportFilename
attBody
attConversationID
attDateEnd
attDateModified
attDateRecd
attDateSent
attDateStart
attDelegate
attFrom
attMAPIProps
attMessageClass
attMessageID
attMessageStatus
attNull
attOemCodepage
attOriginalMessageClass
attOwner
attParentID
attPriority
attRecipTable
attRequestRes
attSentFor
attSubject
attTnefVersion
atypFile
atypMax
atypNull
atypOle
atypPicture
cbDisplayName
cbEmailName
cbMaxIdData
cbNSID
cbSeverName
cbTYPE
fmsHasAttach
fmsLocal
fmsModified
fmsNull
fmsRead
fmsSubmitted
LVL_ATTACHMENT
LVL_MESSAGE
MAC_BINARY
prioHigh
prioLow
prioNorm
strGETTNEFSTREAMCODEPAGE
strOPENTNEFSTREAM
strOPENTNEFSTREAMEX
TNEF_BEST_DATA
TNEF_COMPATIBILITY
TNEF_COMPONENT_ATTACHMENT
TNEF_COMPONENT_ENCODING
TNEF_COMPONENT_MESSAGE
TNEF_DECODE
TNEF_ENCODE
TNEF_PROP_ATTACHMENTS_ONLY
TNEF_PROP_CONTAINED
TNEF_PROP_CONTAINED_TNEF
TNEF_PROP_EXCLUDE
TNEF_PROP_INCLUDE
TNEF_PROP_MESSAGE_ONLY
TNEF_PURE
TNEF_SIGNATURE
TNEF_VERSION
trpidClassEntry
trpidGroupNSID
trpidIgnore
trpidNull
trpidOffline
trpidOneOff
trpidResolvedAddress
trpidResolvedGroupAddress
trpidResolvedNSID
trpidUnresolved
xtypeInternet
xtypeUnknown

Variables


Functions


function GetTnefStreamCodepage (lpStream : IStream; var lpulCodepage : ULONG; var lpulSubCodepage : ULONG) : HResult;


function OpenTnefStream (lpvSupport : Pointer; lpStream : IStream; lpszStreamName : PChar; ulFlags : ULONG; lpMessage : IMessage; wKeyVal : Word; var lppTNEF : ITnef) : HResult;

PR_RESPONSE_REQUESTED

function OpenTnefStreamEx (lpvSupport : Pointer; lpStream : IStream; lpszStreamName : PChar; ulFlags : ULONG; lpMessage : IMessage; wKeyVal : Word; lpAdressBook : IAddrBook; var lppTNEF : ITnef) : HResult;


Types


PADDRALIAS = ^TADDRALIAS
!! Member "type" renamed to "_type"
PGETTNEFSTREAMCODEPAGE = function (lpStream : IStream; var lpulCodepage : ULONG; 
    var lpulSubCodepage : ULONG) : HResult

PNSID = ^TNSID

POPENTNEFSTREAM = ^TOPENTNEFSTREAM

POPENTNEFSTREAMEX = ^TOPENTNEFSTREAMEX

PSTnefProblemArray = ^TSTnefProblemArray

PTRP = ^TPGRTRP

TADDRALIAS = record
rgchName : array[0..cbDisplayName - 1] of Char;
rgchEName : array[0..cbEmailName - 1] of Char;
rgchSrvr : array[0..cbSeverName - 1] of Char;
dibDetail : ULONG;
_type : Word;
end;

TATYP = Word
------------------------------------------- } { TNEF Down-level Attachment Types/Structures } { -------------------------------------------
TDTR = record
wYear : Word;
wMonth : Word;
wDay : Word;
wHour : Word;
wMinute : Word;
wSecond : Word;
wDayOfWeek : Word;
end;
----------------------------------- } { TNEF Down-level Date/Time Structure } { -----------------------------------
TNSID = record
dwSize : DWORD;
uchType : array[0..cbTYPE - 1] of Char;
xtype : TXTYPE;
lTime : Longint;
end;

TOPENTNEFSTREAM = function (lpvSupport : Pointer; lpStream : IStream;
    lpszStreamName : PChar; ulFlags : ULONG; lpMessage : IMessage;
    wKeyVal : Word; var lppTNEF : ITnef) : HResult

TOPENTNEFSTREAMEX = function (lpvSupport : Pointer; lpStream : IStream;
    lpszStreamName : PChar; ulFlags : ULONG; lpMessage : IMessage;
    wKeyVal : Word; lpAdressBook : IAddrBook; var lppTNEF : ITnef) : HResult

TPGRTRP = ^TPTRP

TPRENDDATA = ^TRENDDATA

TPTRP = ^TTRP

TRENDDATA = record
atyp : TATYP;
ulPosition : ULONG;
dxWidth : Word;
dyHeight : Word;
dwFlags : DWORD;
end;
!! #pragma pack(1) converted to this directive } {$A-
TSTnefProblem = record
ulComponent : ULONG;
ulAttribute : ULONG;
ulPropTag : ULONG;
scode : SCODE;
end;
* T N E F . H * * * This file contains structure and function definitions for the * MAPI implementation of the Transport Neutral Encapsilation Format * used by MAPI providers for the neutral serialization of a MAPI * message. This implementation sits on top of the IStream object as * documented in the OLE 2 Specs. * * Copyright 1986-1996 Microsoft Corporation. All Rights Reserved. *) { ------------------------------------ } { TNEF Problem and TNEF Problem Arrays } { ------------------------------------
TSTnefProblemArray = record
cProblem : ULONG;
aProblem : array[0..MAPI_DIM - 1] of TSTnefProblem;
end;

TTRP = record
trpid : Word;
cbgrtrp : Word;
cch : Word;
cbRgb : Word;
end;

TXTYPE = DWORD

Constants

atpByte = (Word($0006))

atpDate = (Word($0003))

atpDword = (Word($0008))

atpLong = (Word($0005))

atpMax = (Word($0009))

atpShort = (Word($0004))

atpString = (Word($0001))

atpText = (Word($0002))

atpTriples = (Word($0000))

------------------------------------- } { TNEF Down-level Attributes/Properties } { -------------------------------------

atpWord = (Word($0007))

attAidOwner = (DWORD(atpLong) shl 16) or WORD($0008)

PR_DATE_END

attAttachCreateDate = (DWORD(atpDate) shl 16) or WORD($8012)

PR_ATTACH_RENDERING

attAttachData = (DWORD(atpByte) shl 16) or WORD($800F)

PR_IMPORTANCE

attAttachment = (DWORD(atpByte) shl 16) or WORD($9005)

PR_MESSAGE_RECIPIENTS

attAttachMetaFile = (DWORD(atpByte) shl 16) or WORD($8011)

PR_ATTACH_FILENAME

attAttachModifyDate = (DWORD(atpDate) shl 16) or WORD($8013)

PR_CREATION_TIME

attAttachRenddata = (DWORD(atpByte) shl 16) or WORD($9002)

PR_ATTACH_TRANSPORT_NAME

attAttachTitle = (DWORD(atpString) shl 16) or WORD($8010)

PR_ATTACH_DATA_xxx

attAttachTransportFilename = (DWORD(atpByte) shl 16) or WORD($9001)

PR_LAST_MODIFICATION_TIME

attBody = (DWORD(atpText) shl 16) or WORD($800C)

PR_CONVERSATION_ID

attConversationID = (DWORD(atpString) shl 16) or WORD($800)

PR_PARENT_ID

attDateEnd = (DWORD(atpDate) shl 16) or WORD($0007)

PR_DATE_START

attDateModified = (DWORD(atpDate) shl 16) or WORD($8020)

PR_LAST_MODIFICATION_TIME

attDateRecd = (DWORD(atpDate) shl 16) or WORD($8006)

PR_CLIENT_SUBMIT_TIME

attDateSent = (DWORD(atpDate) shl 16) or WORD($8005)

PR_SUBJECT

attDateStart = (DWORD(atpDate) shl 16) or WORD($0006)

PR_RCVD_REPRESENTING_xxx

attDelegate = (DWORD(atpByte) shl 16) or WORD($0002)

PR_SENT_REPRESENTING_xxx

attFrom = (DWORD(atpTriples) shl 16) or WORD($8000)

attMAPIProps = (DWORD(atpByte) shl 16) or WORD($9003)

attMessageClass = (DWORD(atpWord) shl 16) or WORD($8008)

PR_MESSAGE_FLAGS

attMessageID = (DWORD(atpString) shl 16) or WORD($8009)

PR_MESSAGE_CLASS

attMessageStatus = (DWORD(atpByte) shl 16) or WORD($8007)

PR_MESSAGE_DELIVERY_TIME

attNull = (DWORD(0) shl 16) or WORD($0000)

attOemCodepage = (DWORD(atpByte) shl 16) or WORD($9007)

attOriginalMessageClass = (DWORD(atpWord) shl 16) or WORD($0006)

attOwner = (DWORD(atpByte) shl 16) or WORD($0000)

PR_ORIG_MESSAGE_CLASS

attParentID = (DWORD(atpString) shl 16) or WORD($800A)

PR_MESSAGE_ID

attPriority = (DWORD(atpShort) shl 16) or WORD($800D)

PR_BODY

attRecipTable = (DWORD(atpByte) shl 16) or WORD($9004)

attRequestRes = (DWORD(atpShort) shl 16) or WORD($0009)

PR_OWNER_APPT_ID

attSentFor = (DWORD(atpByte) shl 16) or WORD($0001)

PR_RCVD_REPRESENTING_xxx or PR_SENT_REPRESENTING_xxx

attSubject = (DWORD(atpString) shl 16) or WORD($8004)

PR_ORIGINATOR_RETURN_ADDRESS

attTnefVersion = (DWORD(atpDword) shl 16) or WORD($9006)

atypFile = 1

atypMax = 4

atypNull = 0

!! Enum converted to constants

atypOle = 2

atypPicture = 3

cbDisplayName = 41

cbEmailName = 11

cbMaxIdData = 200

cbNSID = SizeOf(TNSID)

cbSeverName = 12

cbTYPE = 16

!! This construct refers to a non-existent identifier (ALIAS): cbALIAS = SizeOf(ALIAS);

fmsHasAttach = (Byte($80))

fmsLocal = (Byte($02))

fmsModified = (Byte($01))

fmsNull = (Byte($00))

!! #pragma pack() converted to this directive } {$A+} { ----------------------------- } { TNEF Down-level Message Flags } { -----------------------------

fmsRead = (Byte($20))

fmsSubmitted = (Byte($04))

LVL_ATTACHMENT = (Byte($02))

LVL_MESSAGE = (Byte($01))

MAC_BINARY = (DWORD($00000001))

prioHigh = 1

prioLow = 3

-------------------------- } { TNEF Down-level Priorities } { --------------------------

prioNorm = 2

strGETTNEFSTREAMCODEPAGE = 'GetTnefStreamCodePage'

strOPENTNEFSTREAM = 'OpenTnefStream'

!! String renamed with "str" prefix

strOPENTNEFSTREAMEX = 'OpenTnefStreamEx'

TNEF_BEST_DATA = (ULONG($00040000))

TNEF_COMPATIBILITY = (ULONG($00020000))

TNEF_COMPONENT_ATTACHMENT = (ULONG($00002000))

TNEF_COMPONENT_ENCODING = (ULONG($80000000))

TNEF_COMPONENT_MESSAGE = (ULONG($00001000))

FinishComponent

TNEF_DECODE = (ULONG(0))

Pointers to TNEF Interface ---------------------------------------- } { OpenTNEFStream

TNEF_ENCODE = (ULONG(2))

TNEF_PROP_ATTACHMENTS_ONLY = (ULONG($00000010))

TNEF_PROP_CONTAINED = (ULONG($00000004))

TNEF_PROP_CONTAINED_TNEF = (ULONG($00000040))

TNEF_PROP_EXCLUDE = (ULONG($00000002))

TNEF_PROP_INCLUDE = (ULONG($00000001))

AddProps, ExtractProps

TNEF_PROP_MESSAGE_ONLY = (ULONG($00000008))

TNEF_PURE = (ULONG($00010000))

TNEF_SIGNATURE = (ULONG($223E9F78))

-------------------------- } { TNEF Signature and Version } { --------------------------

TNEF_VERSION = (ULONG((ULONG(1) and $FFFF shl 16) or (ULONG(0) and $FFFF)))

trpidClassEntry = (Word($0008))

trpidGroupNSID = (Word($0005))

trpidIgnore = (Word($0007))

trpidNull = (Word($0000))

----------------------------------------- } { TNEF Down-level Triple Address Structures } { -----------------------------------------

trpidOffline = (Word($0006))

trpidOneOff = (Word($0004))

trpidResolvedAddress = (Word($0003))

trpidResolvedGroupAddress = (Word($0009))

trpidResolvedNSID = (Word($0002))

trpidUnresolved = (Word($0001))

xtypeInternet = (TXTYPE(6))

xtypeUnknown = (TXTYPE(0))


Variables