PropertyEntryFixedLength

PropertyEntryFixedLength

Overview

PropertyEntryFixedLength represents a single 16-byte record from a MAPI fixed-length property stream. Each record encodes a property tag (type code in the lower 16 bits, property ID in the upper 16 bits), an access-control flags field, and an 8-byte raw value whose interpretation depends on the property type. Instances are produced exclusively by MsgReader.iter_top_level_fixed_length_properties() and are read-only value objects.

from aspose.email_foss.msg import MsgReader

with MsgReader.from_file("message.msg") as reader:
    for entry in reader.iter_top_level_fixed_length_properties():
        print(f"tag=0x{entry.property_tag:08X} flags=0x{entry.flags:08X} value={entry.value.hex()}")
        print(f"  readable={entry.is_readable()} writable={entry.is_writable()}")

Properties

PropertyTypeDescription
property_tagintFull 32-bit property tag: upper 16 bits = property ID, lower 16 bits = property type code.
flagsintAccess-control flags bitmask (PROPATTR_MANDATORY = 0x1, PROPATTR_READABLE = 0x2, PROPATTR_WRITABLE = 0x4).
valuebytes8-byte raw value whose layout is determined by the property type encoded in property_tag.

Methods

is_mandatory() -> bool

Returns True if the PROPATTR_MANDATORY flag (bit 0) is set in self.flags.


is_readable() -> bool

Returns True if the PROPATTR_READABLE flag (bit 1) is set in self.flags.


is_writable() -> bool

Returns True if the PROPATTR_WRITABLE flag (bit 2) is set in self.flags.

See Also