Общие сведения о двоичном формате файлов Outlook MS-PST (машинный перевод)

Важно!

Данная статья переведена с помощью машинного перевода, см. Отказ от ответственности. Используйте английский вариант этой статьи, который находится здесь, в качестве справочного материала.

Аннотация. Рассматривается двоичный формат файлов MS-PST, используемый в Microsoft Outlook, включая основные структуры и ключевые концепции для программного взаимодействия с ним.

Дата последнего изменения: 23 июня 2011 г.

Применимо к: Office 2007 | Office 2010

В этой статье
Общие сведения о формате файла MS PST
Заключение
Дополнительные ресурсы

**Относится к:**Microsoft Outlook 2010 | Microsoft Office Outlook 2007 | Microsoft OfficeOutlook 2003 | Microsoft Outlook 2002 г. | Microsoft Outlook 2000

Публикации:  Февраль 2011

По:  Корпорация Майкрософт

Содержание

  • Общие сведения о формате файла MS PST

  • Основные компоненты MS PST формата файла

  • Извлечение данных из файла данных Outlook

  • Заключение

  • Дополнительные ресурсы

Статья описывает структуры и некоторые процедуры для работы с MS-PST-файлы. Он является частью серии статей, которые вводят формат двоичного файла, используемый Microsoft Office продуктов. Эти статьи предназначены для использования в сочетании с Microsoft Office File Format Documents на MSDN.

Общие сведения о формате файла MS PST

Формат двоичного файла MS PST — хранилище локальных сообщений для Microsoft Outlook. Microsoft Outlook 2010, Microsoft Office Outlook 2007, Microsoft OfficeOutlook 2003 г. Microsoft Outlook 2002 г. и Microsoft Outlook 2000 используется следующий формат. Он основан на хранилища данных Exchange, в которой собственности и вообще не относящаяся к SQL или любой другой среде базы данных общего назначения. PST-файл представляет банка сообщений, который содержит иерархию папок, и эти папки содержат сообщения, которые сами могут содержать вложения. Сведения о папках сообщений и вложений, хранятся в свойствах.

Основные компоненты MS PST формата файла

На логическом уровне PST-файл состоит из трех слоев: слой узел базы данных (NDB), списки, таблицы и свойства (LTP) слой и слой обмена сообщениями.

  • Слой NDB включает в себя заголовок, сведений о размещении файла и узлы и блоки, которые содержат данные сообщения, а также узлы, которые помогают найти эти данные. Он использует два сбалансированных деревьев для поиска данных: сбалансированное дерево узлов (NBT) и блока сбалансированного дерева (BBT).

  • Слой свойства (LTP) занимается главным образом свойства, которые хранятся в двумерных таблиц.

  • Уровень обмена сообщениями содержит логику для объединения двух слоев в папки, сообщения, вложения и свойства.

На физическом уровне файл начинается с заголовка, за которым следует список необязательных плотности и перемежаются текстового затем серии сопоставление структур блока через заданные интервалы времени между блоками данных. Сопоставление структур фиксированный размер и повторите часто требуются для инкапсуляции областей данных по мере роста файла. Порядок в файле содержатся в разделе следующая схема section 1.3.2 документации MS PST.

Предупреждение

Большинство файлов PST с помощью текст в кодировке Юникод, но некоторые старые версии Outlook создать на основе ANSI PST-файлов. Код должен распознать, является ли файл PST Юникода или ANSI, так как в файлах ANSI смещения, где находятся различные части файла должен рассчитываться по-разному.

  • Структура Header

    Структура заголовка находится в самом начале файла и содержит три основные группы данных: метаданные, корневую запись и начального свободное карты (FMap) и свободная страница сопоставления (FPMap).

  • страница Allocation Map (AMap)

    Страница Allocation Map (AMap) отслеживает состояние выделения в разделе данных, непосредственно следующий за AMap страницы в файле. Можно просмотреть на странице завершения AMap как массив битов, где каждый бит соответствует состоянию распределения 64 байт данных. AMap страница отображается приблизительно каждые 250 КБ в PST-файл.

  • Density List (Dlist)

    Список плотность (DList) — это перечень ссылок на страницы AMap, сортируются в порядке возрастания плотности. Таким образом, чтобы сначала данные записываются на разделы с максимальным свободным пространством, оптимизирует выделение места на диске. DList всегда расположен по смещению 0x4200 в файле.

    Помните, что в старых версиях Outlook использования DList. Кроме того DList иногда может быть перезаписана при временных процессов и может возвращать неправильный циклическую проверку избыточности (CRC).

  • Другие страницы карты

    В PST-файлы, которые не содержат допустимые DList можно перейти, используя следующие структуры наподобие AMap устаревшего сопоставления, которые поддерживаются для обратной совместимости и поддерживать положения основного файла.

    • страница Page Map (PMap)

      Page Map (PMap) страница используется для хранения BBT и NBT, которые содержат большую часть метаданных в файл PST для оптимизации поиска доступных страниц. Страница PMap 512 байт и сопоставляет страниц 512 байт. PMap страница отображается приблизительно каждые 2 МБ или одну PMap страницу каждые 8 страниц AMap.

    • страница Free Map (FMap)

      Страница Free Map (FMap) обеспечивает механизм, позволяющий быстро найти свободное место. Каждый байт страницы FMap соответствует одной странице AMap. Значение каждого байта указывает наибольший номер бесплатно битов, найденные на соответствующей странице AMap. Каждая страница FMap (496 байт) занимает примерно 125 МБ данных.

    • страница Free Page Map (FPMap)

      Каждый бит Free Page Map (FPMap) страница соответствует странице PMap, а значение бита указывает, являются ли все свободных страниц внутри нее PMap. В 496 байт страницы FPMap занимает около 8 ГБ.

  • Другие структуры

    Существует слишком много важных структур в PST-файле для определения их все в этой статье. Ниже приведены некоторые основные структуры на основе.

  • Blocks

    Блоки являются основными единицами хранения данных на уровне NDB. Блоки, назначаются в размеры, кратные 64 байта, а на границах 64 байта, максимум 8 КБ. Каждый блок его метаданные хранятся в трейлер блока в конце блока. Блоки данных хранение необработанных данных. Блоки подузлов представляют подузлы, содержащееся в узле.

  • Nodes

    Узел состоит из блоков данных и Subnode BTree. Он используется для разделения данных .pst на логических потоков.

  • Node BTree (NBT) and Block BTree (BBT)

    Node сбалансированного дерева (NBT) и Block сбалансированного дерева (BBT) содержат ссылки на все доступные узлы и блоки в файле. Они находятся в узле ROOT заголовка.

  • записи Property Context (PC)

    Свойства сообщения хранятся на уровне LPT как Property Context (PC) записей. Запись PC строится на поток данных узла на BTree-on-Heap (BTH).

Извлечение данных из файла данных Outlook

PST-файлы являются большими и сложными. Вместо создания пользовательских .pst средства чтения, можно использовать SDK формат файла PST (Возможно, на английском языке). Пакет SDK для формата файла PST включает необходимые средства и документацию для выполнения других основных задач и извлечения сообщений. Также можно просматривать внутренние структуры в PST-файл с помощью Средство просмотра структуры данных PST (Возможно, на английском языке).

Заключение

Знакомство и работа с двоичным файлом Общие сведения о форматах и формат файла MS PST в частности, может оказаться сложной задачей. К счастью для упрощения этого существует SDK формат файла PST. Путем объединения значений параметров сведения в этой статье, инструментальные средства и документацию, комплект SDK и используя документы открытые спецификации в качестве образца, имеется несколько средств для достижения поставленных целей.

Дополнительные ресурсы

Дополнительные сведения см. в следующих документах, в которых описывается:

Примечание

Отказ от ответственности относительно машинного перевода. Данная статья была переведена с помощью компьютерной системы без участия человека. Microsoft предлагает эти машинные переводы, чтобы помочь пользователям, которые не знают английского языка, ознакомиться с материалами о продуктах, услугах и технологиях Microsoft. Поскольку статья была переведена с использованием машинного перевода, она может содержать лексические,синтаксические и грамматические ошибки.