PST File Format SDK v0.4
Loading...
Searching...
No Matches
pstsdk Namespace Reference

Contains the definition of all in memory representations of disk structures. More...

Namespaces

namespace  disk
 Contains the definition of all structures as persisted to disk.
 

Classes

struct  alias_tag
 Tag structure used to indicate a copy constructed class should be an alias (shallow copy) rather than a deep copy. More...
 
class  attachment
 Encapsulates an attachment to a message. More...
 
class  attachment_transform
 Defines a transform from a row to an attachment object. More...
 
class  basic_table
 Implementation of an ANSI TC (64k rows) and a unicode TC. More...
 
class  block
 The base class of the block class hierarchy. More...
 
struct  block_info
 An in memory, database format agnostic version of disk::bbt_leaf_entry. More...
 
class  bt_leaf_page
 Contains the actual key value pairs of the btree. More...
 
class  bt_nonleaf_page
 Contains references to other bt_pages. More...
 
class  bt_page
 
class  bth_leaf_node
 Contains the actual key value pairs of the BTH. More...
 
class  bth_node
 The object which forms the root of the BTH hierarchy. More...
 
class  bth_nonleaf_node
 Contains references to other bth_node allocations. More...
 
struct  btree_iter_impl
 BTree iterator helper class. More...
 
class  btree_node
 A BTree Node. More...
 
class  btree_node_leaf
 Represents a leaf node in a BTree structure. More...
 
class  btree_node_nonleaf
 Represents a non-leaf node in a BTree structure. More...
 
class  can_not_resize
 A block or node can not satisfy a resize request. More...
 
class  const_btree_node_iter
 The actual iterator type used by the btree_node class hierarchy. More...
 
class  const_property_object
 Property object base class. More...
 
class  const_table_row
 An abstraction of a table row. More...
 
class  const_table_row_iter
 The iterator type exposed by the table for row iteration. More...
 
class  crc_fail
 A CRC of an item failed. More...
 
class  data_block
 A block which represents end user data. More...
 
class  database_corrupt
 The database is corrupt. More...
 
class  database_impl
 PST implementation. More...
 
class  db_context
 Database external interface. More...
 
struct  distribution_list_wrapped_entry_id
 
struct  entry_id_bytebag
 
struct  entry_id_header
 
class  extended_block
 A data block which refers to other data blocks, in order to extend the physical size limit (8k) to a larger logical size. More...
 
class  external_block
 Contains actual data. More...
 
class  file
 A generic class to read and write to a file. More...
 
class  folder
 A folder in a PST file. More...
 
class  folder_transform_info
 Defines a transform from a node_info to a folder. More...
 
class  folder_transform_row
 Defines a transform from a row of a hierarchy table to a folder. More...
 
struct  guid
 A Win32 GUID structure. More...
 
class  heap
 Heap-on-Node implementation. More...
 
class  heap_impl
 The HN implementation. More...
 
class  hid_stream_device
 Defines a stream device for a heap allocation for use by boost iostream. More...
 
class  hnid_stream_device
 Defines a stream device which can wrap one of the two prop sources. More...
 
class  invalid_format
 The database was not in the expected format. More...
 
struct  is_nid_type
 Functor to determine if an object is of the specified node type. More...
 
class  key_not_found
 The requested key was not found. More...
 
class  message
 Represents a message in a PST file. More...
 
class  message_transform_info
 
class  message_transform_row
 
class  name_id_map
 A named property map abstraction. More...
 
class  named_prop
 A named property. More...
 
class  node
 An in memory representation of the "node" concept in a PST data file. More...
 
class  node_impl
 The node implementation. More...
 
struct  node_info
 An in memory, database format agnostic version of disk::nbt_leaf_entry. More...
 
class  node_stream_device
 Defines a stream device for a node for use by boost iostream. More...
 
class  not_implemented
 This function or method has not been implemented. More...
 
class  page
 Generic base class for all page typesA page which forms a node in the NBT or BBT. More...
 
struct  page_info
 An in memory, database format agnostic version of disk::block_reference used specifically for the page class hierarchy. More...
 
class  property_bag
 Property Context (PC) Implementation. More...
 
class  pst
 A PST file. More...
 
class  recipient
 A recipient of a message. More...
 
struct  recipient_oneoff_entry_id
 One-off recipient EntryID [MS-OXCDATA] 2.2.5.1. More...
 
struct  recipient_transform
 Defines a transform from a row to a recipient object. More...
 
class  search_folder
 Search Folder object. More...
 
class  search_folder_transform_row
 Defines a transform from a row of a hierarchy table to a search_folder. More...
 
class  sig_mismatch
 An unexpected signature was encountered. More...
 
class  subnode_block
 A block which contains information about subnodes. More...
 
struct  subnode_info
 An in memory, database format agnostic version of disk::sub_leaf_entry. More...
 
class  subnode_leaf_block
 Contains the actual subnode information. More...
 
class  subnode_nonleaf_block
 Contains references to subnode_leaf_blocks. More...
 
class  subnode_transform_info
 Defines a transform from a subnode_info to an actual node object. More...
 
class  table
 The actual table object that clients reference. More...
 
class  table_impl
 Table implementation. More...
 
class  unexpected_block
 An unexpected block or block type was encountered. More...
 
class  unexpected_page
 An unexpected page or page type was encountered. More...
 
class  write_error
 An error occured writing to the file. More...
 

Typedefs

typedef std::shared_ptr< heap_implheap_ptr
 
typedef boost::iostreams::stream< hid_stream_devicehid_stream
 The actual heap allocation stream, defined using the boost iostream library and the hid_stream_device.
 
typedef boost::iostreams::stream< hnid_stream_deviceprop_stream
 The actual property stream, defined using the boost iostream library and the hnid_stream_device.
 
typedef bth_node< prop_id, disk::prop_entrypc_bth_node
 
typedef bth_nonleaf_node< prop_id, disk::prop_entrypc_bth_nonleaf_node
 
typedef bth_leaf_node< prop_id, disk::prop_entrypc_bth_leaf_node
 
typedef std::shared_ptr< table_impltable_ptr
 
typedef std::shared_ptr< const table_implconst_table_ptr
 
typedef basic_table< ushortsmall_table
 
typedef basic_table< ulonglarge_table
 
typedef database_impl< ulonglonglarge_pst
 
typedef database_impl< ulongsmall_pst
 
typedef bt_page< node_id, node_infonbt_page
 
typedef bt_page< block_id, block_infobbt_page
 
typedef bt_nonleaf_page< node_id, node_infonbt_nonleaf_page
 
typedef bt_nonleaf_page< block_id, block_infobbt_nonleaf_page
 
typedef bt_leaf_page< node_id, node_infonbt_leaf_page
 
typedef bt_leaf_page< block_id, block_infobbt_leaf_page
 
typedef const_btree_node_iter< node_id, node_infoconst_nodeinfo_iterator
 
typedef const_btree_node_iter< node_id, subnode_infoconst_subnodeinfo_iterator
 
typedef const_btree_node_iter< block_id, block_infoconst_blockinfo_iterator
 
typedef std::shared_ptr< db_contextshared_db_ptr
 
typedef std::weak_ptr< db_contextweak_db_ptr
 
typedef boost::iostreams::stream< node_stream_devicenode_stream
 The actual node stream, defined using the boost iostream library and the node_stream_device.
 
typedef boost::uint32_t uint
 
typedef boost::uint32_t ulong
 
typedef boost::int32_t slong
 
typedef boost::uint64_t ulonglong
 
typedef boost::int64_t slonglong
 
typedef boost::uint8_t byte
 
typedef boost::uint16_t ushort
 
typedef ulong node_id
 
typedef ulonglong block_id
 
typedef block_id page_id
 
typedef ulong heap_id
 
typedef ulong heapnode_id
 
typedef ushort prop_id
 
typedef ulong row_id
 

Enumerations

enum class  distribution_list_entry_id_type {
  one_off = 0 , contact = 3 , personal_distribution_list = 4 , mail_user_gal = 5 ,
  distribution_list_gal = 6
}
 
enum  nid_type {
  nid_type_none = 0x00 , nid_type_internal = 0x01 , nid_type_folder = 0x02 , nid_type_search_folder = 0x03 ,
  nid_type_message = 0x04 , nid_type_attachment = 0x05 , nid_type_search_update_queue = 0x06 , nid_type_search_criteria_object = 0x07 ,
  nid_type_associated_message = 0x08 , nid_type_storage = 0x09 , nid_type_contents_table_index = 0x0A , nid_type_receive_folder_table = 0x0B ,
  nid_type_outgoing_queue_table = 0x0C , nid_type_hierarchy_table = 0x0D , nid_type_contents_table = 0x0E , nid_type_associated_contents_table = 0x0F ,
  nid_type_search_contents_table = 0x10 , nid_type_attachment_table = 0x11 , nid_type_recipient_table = 0x12 , nid_type_search_table_index = 0x13 ,
  nid_type_contents_smp = 0x14 , nid_type_associated_contents_smp = 0x15 , nid_type_change_history_table = 0x16 , nid_type_tombstone_table = 0x17 ,
  nid_type_tombstone_date_table = 0x18 , nid_type_lrep_dups_table = 0x19 , nid_type_folder_path_tombstone_table = 0x1A , nid_type_ltp = 0x1F ,
  nid_type_max = 0x20
}
 Different node types found in a PST file. More...
 
enum  predefined_nid {
  nid_message_store = make_nid(nid_type_internal, 0x1) , nid_name_id_map = make_nid(nid_type_internal, 0x3) , nid_normal_folder_template = make_nid(nid_type_folder, 0x6) , nid_search_folder_template = make_nid(nid_type_search_folder, 0x7) ,
  nid_root_folder = make_nid(nid_type_folder, 0x9) , nid_search_management_queue = make_nid(nid_type_internal, 0xF) , nid_search_activity_list = make_nid(nid_type_internal, 0x10) , nid_search_domain_alternative = make_nid(nid_type_internal, 0x12) ,
  nid_search_domain_object = make_nid(nid_type_internal, 0x13) , nid_search_gatherer_queue = make_nid(nid_type_internal, 0x14) , nid_search_gatherer_descriptor = make_nid(nid_type_internal, 0x15) , nid_table_rebuild_queue = make_nid(nid_type_internal, 0x17) ,
  nid_junk_mail_pihsl = make_nid(nid_type_internal, 0x18) , nid_search_gatherer_folder_queue = make_nid(nid_type_internal, 0x19) , nid_tc_sub_props = make_nid(nid_type_internal, 0x27) , nid_index_template = 0x30 ,
  nid_hierarchy_table_template = make_nid(nid_type_hierarchy_table, nid_index_template) , nid_contents_table_template = make_nid(nid_type_contents_table, nid_index_template) , nid_associated_contents_table_template = make_nid(nid_type_associated_contents_table, nid_index_template) , nid_search_contents_table_template = make_nid(nid_type_search_contents_table, nid_index_template) ,
  nid_smp_template = make_nid(nid_type_contents_smp, nid_index_template) , nid_tombstone_table_template = make_nid(nid_type_tombstone_table, nid_index_template) , nid_lrep_dups_table_template = make_nid(nid_type_lrep_dups_table, nid_index_template) , nid_receive_folders = make_nid(nid_type_receive_folder_table, 0x31) ,
  nid_outgoing_queue = make_nid(nid_type_outgoing_queue_table, 0x32) , nid_attachment_table = make_nid(nid_type_attachment_table, 0x33) , nid_recipient_table = make_nid(nid_type_recipient_table, 0x34) , nid_change_history_table = make_nid(nid_type_change_history_table, 0x35) ,
  nid_tombstone_table = make_nid(nid_type_tombstone_table, 0x36) , nid_tombstone_date_table = make_nid(nid_type_tombstone_date_table, 0x37) , nid_all_message_search_folder = make_nid(nid_type_search_folder, 0x39) , nid_all_message_search_contents = make_nid(nid_type_search_contents_table, 0x39) ,
  nid_lrep_gmp = make_nid(nid_type_internal, 0x40) , nid_lrep_folders_smp = make_nid(nid_type_internal, 0x41) , nid_lrep_folders_table = make_nid(nid_type_internal, 0x42) , nid_folder_path_tombstone_table = make_nid(nid_type_internal, 0x43) ,
  nid_hst_hmp = make_nid(nid_type_internal, 0x60) , nid_index_prv_pub_base = 0x100 , nid_pub_root_folder = make_prv_pub_nid(0) , nid_prv_root_folder = make_prv_pub_nid(5) ,
  nid_criterr_notification = make_nid(nid_type_internal, 0x3FD) , nid_object_notification = make_nid(nid_type_internal, 0x3FE) , nid_newemail_notification = make_nid(nid_type_internal, 0x3FF) , nid_extended_notification = make_nid(nid_type_internal, 0x400) ,
  nid_indexing_notification = make_nid(nid_type_internal, 0x401)
}
 The predefined nodes in a PST/OST file. More...
 
enum  prop_type {
  prop_type_unspecified = 0 , prop_type_null = 1 , prop_type_short = 2 , prop_type_mv_short = 4098 ,
  prop_type_long = 3 , prop_type_mv_long = 4099 , prop_type_float = 4 , prop_type_mv_float = 4100 ,
  prop_type_double = 5 , prop_type_mv_double = 4101 , prop_type_currency = 6 , prop_type_mv_currency = 4102 ,
  prop_type_apptime = 7 , prop_type_mv_apptime = 4103 , prop_type_error = 10 , prop_type_boolean = 11 ,
  prop_type_object = 13 , prop_type_longlong = 20 , prop_type_mv_longlong = 4116 , prop_type_string = 30 ,
  prop_type_mv_string = 4126 , prop_type_wstring = 31 , prop_type_mv_wstring = 4127 , prop_type_systime = 64 ,
  prop_type_mv_systime = 4160 , prop_type_guid = 72 , prop_type_mv_guid = 4168 , prop_type_binary = 258 ,
  prop_type_mv_binary = 4354
}
 The different property types as defined by MAPI. More...
 
enum  recipient_type { mapi_to = 1 , mapi_cc = 2 , mapi_bcc = 3 }
 The different recipient types as defined by MAPI. More...
 

Functions

template<>
std::vector< byteconst_property_object::read_prop< std::vector< byte > > (prop_id id) const
 
template<>
std::vector< std::vector< byte > > const_property_object::read_prop_array< std::vector< byte > > (prop_id id) const
 
template<>
std::wstring const_property_object::read_prop< std::wstring > (prop_id id) const
 
template<>
std::vector< std::wstring > const_property_object::read_prop_array< std::wstring > (prop_id id) const
 
template<>
std::string const_property_object::read_prop< std::string > (prop_id id) const
 
template<>
std::vector< std::string > const_property_object::read_prop_array< std::string > (prop_id id) const
 
table_ptr open_table (const node &n)
 Open the specified node as a table.
 
table_ptr open_table (const node &, alias_tag)
 Open the specified node as a table.
 
shared_db_ptr open_database (const std::wstring &filename)
 Open a db_context for the given file.
 
shared_db_ptr open_database (std::shared_ptr< file > file)
 Open a db_context for the given file instance.
 
shared_db_ptr open_database (const shared_db_ptr &other_database)
 Open a db_context by copying the in-memory header and file handle from another db_context.
 
std::shared_ptr< small_pstopen_small_pst (const std::wstring &filename)
 Try to open the given file as an ANSI store.
 
std::shared_ptr< small_pstopen_small_pst (std::shared_ptr< file > file)
 Try to open the given file as an ANSI store with custom file instance.
 
std::shared_ptr< large_pstopen_large_pst (const std::wstring &filename)
 Try to open the given file as a Unicode store.
 
std::shared_ptr< large_pstopen_large_pst (std::shared_ptr< file > file)
 Try to open the given file as a Unicode store with custom file instance.
 
std::ostream & operator<< (std::ostream &out, const attachment &attach)
 operator<< overload for writing an attachment to an ostream
 
nid_type get_nid_type (node_id id)
 Get a node type from a node id.
 
ulong get_nid_index (node_id id)
 Get a node index from a node id.
 
ulong get_heap_page (heap_id id)
 Get the heap page from the heap id.
 
ulong get_heap_index (heap_id id)
 Get the index from the heap id.
 
heap_id make_heap_id (ulong page, ulong index)
 Create a heap_id from a page and an index.
 
bool is_heap_id (heapnode_id id)
 Inspects a heapnode_id (also known as a HNID) to determine if it is a heap_id (HID)
 
bool is_subnode_id (heapnode_id id)
 Inspects a heapnode_id (also known as a HNID) to determine if it is a node_id (NID)
 
bool guid_eq (const guid &l, const guid &r)
 
time_t filetime_to_time_t (ulonglong filetime)
 Convert from a filetime to time_t.
 
ulonglong time_t_to_filetime (time_t time)
 Convert from a time_t to filetime.
 
time_t vt_date_to_time_t (double vt_time)
 Convert from a VT_DATE to a time_t.
 
double time_t_to_vt_date (time_t time)
 Convert from a time_t to a VT_DATE.
 
bool test_bit (const byte *pbytes, ulong bit)
 Test to see if the specified bit in the buffer is set.
 
std::string bytes_to_string (const std::vector< byte > &bytes)
 Convert an array of bytes to a std::wstring.
 
std::wstring bytes_to_wstring (const std::vector< byte > &bytes)
 Convert an array of bytes to a std::wstring.
 
std::vector< bytewstring_to_bytes (const std::wstring &wstr)
 Convert a std::wstring to an array of bytes.
 

Variables

const ulong nid_type_mask = 0x1FL
 The portion of a node_id reserved for the type.
 
const byte message_subject_prefix_lead_byte = 0x01
 A sentinel byte which indicates the message subject contains a prefix.
 
const guid ps_none = { 0, 0, 0, { 0, 0, 0, 0, 0, 0, 0, 0 } }
 The NULL guid.
 
const guid ps_mapi = { 0x20328, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PS_MAPI guid.
 
const guid ps_public_strings = { 0x20329, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PS_PUBLIC_STRINGS guid.
 
const guid ps_appointment = {0x62002, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PS_APPOINTMENT guid.
 
const guid ps_task = {0x62003, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PS_TASK guid.
 
const guid ps_common = {0x62008, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PS_COMMON guid.
 
const guid ps_address = {0x62004, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PSETID_Address guid.
 
const guid ps_meeting = {0x6ED8DA90, 0x450B, 0x101B, { 0x98, 0xDA, 0x00, 0xAA, 0x00, 0x3F, 0x13, 0x05 } }
 The PSETID_Meeting guid.
 
const guid ps_internet_headers = {0x20386, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PS_INTERNET_HEADERS guid.
 
const guid ps_sharing = {0x62040, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PSETID_Sharing guid.
 
const guid ps_log = {0x6200A, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PSETID_Log guid.
 
const guid ps_postrss = {0x62041, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PSETID_PostRss guid.
 
const guid ps_note = {0x6200E, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PSETID_Note guid.
 
const guid ps_calendarassistant = {0x11000E07, 0xB51B, 0x40D6, { 0xAF, 0x21, 0xCA, 0xA8, 0x5E, 0xDA, 0xB1, 0xD0 } }
 The PSETID_CalendarAssistant guid.
 
const guid ps_remote = {0x62014, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }
 The PSETID_Remote guid.
 
const guid provider_uid_wrapped_entry_id = {0xD3AD91C0, 0x9D51, 0x11CF, { 0xA4, 0xA9, 0x00, 0xAA, 0x00, 0x47, 0xFA, 0xA4 } }
 The ProviderUID for WrappedEntryId.
 
const guid provider_uid_recipient_oneoff = {0xA41F2B81, 0xA3BE, 0x1910, { 0x9D, 0x6E, 0x00, 0xDD, 0x01, 0x0F, 0x54, 0x02 } }
 The ProviderUID for Recipient One-Off EntryID.
 

Detailed Description

Contains the definition of all in memory representations of disk structures.

Typedef Documentation

◆ bbt_leaf_page

◆ bbt_nonleaf_page

◆ bbt_page

◆ const_blockinfo_iterator

◆ const_nodeinfo_iterator

◆ const_subnodeinfo_iterator

◆ const_table_ptr

Definition at line 28 of file table.h.

◆ heap_ptr

Definition at line 50 of file heap.h.

◆ large_pst

◆ large_table

Definition at line 293 of file table.h.

◆ nbt_leaf_page

◆ nbt_nonleaf_page

◆ nbt_page

◆ pc_bth_leaf_node

◆ pc_bth_node

◆ pc_bth_nonleaf_node

◆ shared_db_ptr

Definition at line 100 of file database_iface.h.

◆ small_pst

Definition at line 33 of file database.h.

◆ small_table

Definition at line 292 of file table.h.

◆ table_ptr

Definition at line 27 of file table.h.

◆ weak_db_ptr

Definition at line 101 of file database_iface.h.

Enumeration Type Documentation

◆ distribution_list_entry_id_type

Enumerator
one_off 
contact 
personal_distribution_list 
mail_user_gal 
distribution_list_gal 

Definition at line 11 of file entryid.h.

Function Documentation

◆ const_property_object::read_prop< std::string >()

template<>
std::string pstsdk::const_property_object::read_prop< std::string > ( prop_id  id) const
inlineprotected

Definition at line 386 of file object.h.

◆ const_property_object::read_prop< std::vector< byte > >()

template<>
std::vector< byte > pstsdk::const_property_object::read_prop< std::vector< byte > > ( prop_id  id) const
inlineprotected

Definition at line 262 of file object.h.

◆ const_property_object::read_prop< std::wstring >()

template<>
std::wstring pstsdk::const_property_object::read_prop< std::wstring > ( prop_id  id) const
inlineprotected

Definition at line 348 of file object.h.

◆ const_property_object::read_prop_array< std::string >()

template<>
std::vector< std::string > pstsdk::const_property_object::read_prop_array< std::string > ( prop_id  id) const
inlineprotected

Definition at line 386 of file object.h.

◆ const_property_object::read_prop_array< std::vector< byte > >()

template<>
std::vector< std::vector< byte > > pstsdk::const_property_object::read_prop_array< std::vector< byte > > ( prop_id  id) const
inlineprotected

Definition at line 309 of file object.h.

◆ const_property_object::read_prop_array< std::wstring >()

template<>
std::vector< std::wstring > pstsdk::const_property_object::read_prop_array< std::wstring > ( prop_id  id) const
inlineprotected

Definition at line 348 of file object.h.

◆ guid_eq()

bool pstsdk::guid_eq ( const guid l,
const guid r 
)
inline

Definition at line 360 of file primitives.h.

Variable Documentation

◆ provider_uid_recipient_oneoff

const guid pstsdk::provider_uid_recipient_oneoff = {0xA41F2B81, 0xA3BE, 0x1910, { 0x9D, 0x6E, 0x00, 0xDD, 0x01, 0x0F, 0x54, 0x02 } }

The ProviderUID for Recipient One-Off EntryID.

See also
[MS-OXCDATA] 2.2.5.1 {A41F2B81-A3BE-1910-9D6E-00DD010F5402}

Definition at line 427 of file primitives.h.

◆ provider_uid_wrapped_entry_id

const guid pstsdk::provider_uid_wrapped_entry_id = {0xD3AD91C0, 0x9D51, 0x11CF, { 0xA4, 0xA9, 0x00, 0xAA, 0x00, 0x47, 0xFA, 0xA4 } }

The ProviderUID for WrappedEntryId.

See also
[MS-OXOCNTC] 2.2.2.2.4.1.1

Definition at line 422 of file primitives.h.

◆ ps_address

const guid pstsdk::ps_address = {0x62004, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PSETID_Address guid.

Definition at line 394 of file primitives.h.

◆ ps_appointment

const guid pstsdk::ps_appointment = {0x62002, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PS_APPOINTMENT guid.

Definition at line 385 of file primitives.h.

◆ ps_calendarassistant

const guid pstsdk::ps_calendarassistant = {0x11000E07, 0xB51B, 0x40D6, { 0xAF, 0x21, 0xCA, 0xA8, 0x5E, 0xDA, 0xB1, 0xD0 } }

The PSETID_CalendarAssistant guid.

Definition at line 415 of file primitives.h.

◆ ps_common

const guid pstsdk::ps_common = {0x62008, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PS_COMMON guid.

Definition at line 391 of file primitives.h.

◆ ps_internet_headers

const guid pstsdk::ps_internet_headers = {0x20386, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PS_INTERNET_HEADERS guid.

Definition at line 400 of file primitives.h.

◆ ps_log

const guid pstsdk::ps_log = {0x6200A, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PSETID_Log guid.

Definition at line 406 of file primitives.h.

◆ ps_meeting

const guid pstsdk::ps_meeting = {0x6ED8DA90, 0x450B, 0x101B, { 0x98, 0xDA, 0x00, 0xAA, 0x00, 0x3F, 0x13, 0x05 } }

The PSETID_Meeting guid.

Definition at line 397 of file primitives.h.

◆ ps_note

const guid pstsdk::ps_note = {0x6200E, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PSETID_Note guid.

Definition at line 412 of file primitives.h.

◆ ps_postrss

const guid pstsdk::ps_postrss = {0x62041, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PSETID_PostRss guid.

Definition at line 409 of file primitives.h.

◆ ps_remote

const guid pstsdk::ps_remote = {0x62014, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PSETID_Remote guid.

Definition at line 418 of file primitives.h.

◆ ps_sharing

const guid pstsdk::ps_sharing = {0x62040, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PSETID_Sharing guid.

Definition at line 403 of file primitives.h.

◆ ps_task

const guid pstsdk::ps_task = {0x62003, 0, 0, { 0xc0, 0, 0, 0, 0, 0, 0, 0x46 } }

The PS_TASK guid.

Definition at line 388 of file primitives.h.