PidTagAttachMethod Canonical Property
Applies to: Outlook 2013 | Outlook 2016
Contains a MAPI-defined constant representing the way the contents of an attachment can be accessed.
Property | Value |
---|---|
Associated properties: |
PR_ATTACH_METHOD |
Identifier: |
0x3705 |
Data type: |
PT_LONG |
Area: |
Message attachment |
Remarks
This property can have exactly one of the following values:
NO_ATTACHMENT
The attachment has just been created.
ATTACH_BY_VALUE
The PR_ATTACH_DATA_BIN (PidTagAttachDataBinary) property contains the attachment data.
ATTACH_BY_REFERENCE
The PR_ATTACH_PATHNAME (PidTagAttachPathname) or PR_ATTACH_LONG_PATHNAME (PidTagAttachLongPathname) property contains a fully-qualified path identifying the attachment to recipients with access to a common file server.
ATTACH_BY_REF_RESOLVE
The PR_ATTACH_PATHNAME or PR_ATTACH_LONG_PATHNAME property contains a fully-qualified path identifying the attachment.
ATTACH_BY_REF_ONLY
The PR_ATTACH_PATHNAME or PR_ATTACH_LONG_PATHNAME property contains a fully-qualified path identifying the attachment.
ATTACH_EMBEDDED_MSG
The PR_ATTACH_DATA_OBJ (PidTagAttachDataObject) property contains an embedded object that supports the IMessage interface.
ATTACH_OLE
The attachment is an embedded OLE object.
ATTACH_BY_WEBREFERENCE
The attachment content is not in the message.
When created, all attachment objects have an initial PR_ATTACH_METHOD value of NO_ATTACHMENT.
Client applications and service providers are only required to support the attachment method represented by the ATTACH_BY_VALUE value. The other attachment methods are optional. The message store does not enforce any consistency between the value of PR_ATTACH_METHOD and the values of the other attachment properties.
Universal naming convention (UNC) names are recommended for fully-qualified paths, which should be used with ATTACH_BY_REFERENCE and ATTACH_BY_REF_ONLY. With ATTACH_BY_REF_RESOLVE, an absolute path is faster, because the MAPI spooler converts the attachment to ATTACH_BY_VALUE.
If ATTACH_BY_REFERENCE is set, PR_ATTACH_DATA_BIN must be empty. An outbound gateway can turn an ATTACH_BY_REFERENCE attachment into an ATTACH_BY_VALUE attachment by copying the attachment data into the PR_ATTACH_DATA_BIN property.
If ATTACH_BY_REF_RESOLVE is set, PR_ATTACH_DATA_BIN must be empty. When the message that contains the ATTACH_BY_REF_RESOLVE attachment is sent, the MAPI spooler copies the attachment data into an ATTACH_BY_VALUE attachment. This resolution process places the attachment data in PR_ATTACH_DATA_BIN.
If ATTACH_BY_REF_ONLY is set, PR_ATTACH_DATA_BIN must be empty, and the messaging system never resolves the attachment reference. Use this value when you want to send the link but not the data.
When the OLE object is in OLE 2.0 IStorage format, the data is accessible through PR_ATTACH_DATA_OBJ. When the OLE object is in OLE 1.0 OLESTREAM format, the data is accessible through PR_ATTACH_DATA_BIN as an IStream. The type of the OLE encoding can be determined by the PR_ATTACH_TAG (PidTagAttachTag) value.
For more information on OLE interfaces and formats, see the OLE Programmer's Reference.
When the PR_ATTACH_METHOD is ATTACH_BY_WEBREFERENCE, the attachment content is not in the message. Instead, the PR_ATTACH_LONG_FILENAME property contains an absolute URL to the attachment content, which is stored online.
Related resources
Protocol specifications
Handles message and attachment objects.
Header files
Mapidefs.h
Provides data type definitions.
Mapitags.h
Contains definitions of properties listed as alternate names.
See also
PidTagStoreSupportMask Canonical Property