Exemplo n.º 1
0
        public NAMEID(byte[] bytes, int offset, NamedToPropertyLookup lookup)
        {
            this.PropertyID = BitConverter.ToUInt32(bytes, offset);
            this.PropertyIDStringOffset = (bytes[offset + 4] & 0x1) == 1;
            var guidType = BitConverter.ToUInt16(bytes, offset + 4) >>1;
            if (guidType == 1)
            {
                this.Guid = new Guid("00020328-0000-0000-C000-000000000046");//PS-MAPI
            } else if (guidType == 2)
            {
                this.Guid = new Guid("00020329-0000-0000-C000-000000000046");//PS_PUBLIC_STRINGS
            } else
            {
                this.Guid = new Guid(lookup._GUIDs.RangeSubset((guidType - 3)*16, 16));
            }

            this.PropIndex = (UInt16)(0x8000 + BitConverter.ToUInt16(bytes, offset + 6));
        }
Exemplo n.º 2
0
        public NAMEID(byte[] bytes, int offset, NamedToPropertyLookup lookup)
        {
            PropertyID             = BitConverter.ToUInt32(bytes, offset);
            PropertyIDStringOffset = (bytes[offset + 4] & 0x1) == 1;
            var guidType = BitConverter.ToUInt16(bytes, offset + 4) >> 1;

            if (guidType == 1)
            {
                Guid = new Guid("00020328-0000-0000-C000-000000000046");//PS-MAPI
            }
            else if (guidType == 2)
            {
                Guid = new Guid("00020329-0000-0000-C000-000000000046");//PS_PUBLIC_STRINGS
            }
            else
            {
                Guid = new Guid(lookup._GUIDs.RangeSubset((guidType - 3) * 16, 16));
            }

            PropIndex = (UInt16)(0x8000 + BitConverter.ToUInt16(bytes, offset + 6));
        }