Monday, May 24, 2010

Open source PST SDK/library… from Microsoft!? Yep!

Microsoft PressPass - Microsoft Delivers on Interoperability Principles With Office Outlook

REDMOND, Wash. — May 24, 2010 — Microsoft Corp. today announced the availability of two new open source projects that complement technical documentation recently released for Microsoft Outlook Personal Folders (.pst). Combined, the documentation and tools advance interoperability with data stored in .pst files, reflecting customer requests for greater access to data stored and shared in digital formats generated by Microsoft Outlook and for enhanced data portability.

Developers can use these resources to more easily build solutions, including competitive products, that run on top of the .pst file format, unlocking data stored in .pst files in simple scenarios, such as extracting photos stored in .pst files to create an album, as well as more complex scenarios, including archive search, e-discovery and corporate compliance, and uploading data to the cloud.

Now, two new open source projects, a .pst Data Structure View Tool and a .pst File Format Software Development Kit (SDK), further reduce the complexity of reading and extracting data stored in .pst files for use in new applications across a range of platforms. The .pst Data Structure View Tool is a graphical browser of internal data structures for .pst files that enables a developer to better understand .pst file content. The .pst File Format SDK is a cross-platform library that allows developers to read data stored in .pst files and develop applications accessing the data. In the near future, the capability to write data to .pst files will be added to the SDK.

…”

Interoperability @ Microsoft - Two open source projects to facilitate interoperability with Outlook .pst data files

Microsoft today announced the availability of two new open source projects that complement technical documentation recently released for Microsoft Outlook Personal Folders (.pst). From the press release:

Combined, the documentation and tools advance interoperability with data stored in .pst files, reflecting customer requests for greater access to data stored and shared in digital formats generated by Microsoft Outlook and for enhanced data portability.”

The two open source projects, available on Copeplex under the Apache 2.0 license are the following:

  • The PST Data Structure View Tool (http://pstviewtool.codeplex.com/) is a graphical tool allowing the developers to browse the internal data structures of a PST file. The primary goal of this tool is to assist people who are learning .pst format and help them to better understand the documentation.
  • The PST File Format SDK (http://pstsdk.codeplex.com/) is a cross platform C++ library for reading .pst files that can be incorporated into solutions that run on top of the .pst file format. The capability to write data to .pst files is part of the roadmap will be added to the SDK.

To get more details about how these two projects came to life and understand what type of scenarios they enable, watch this video with Daniel Ko, development manager in the Outlook team.

image

…”

CodePlex - PST Data Structure View Tool

“PST Data Structure View Tool (PSTViewTool) is a tool supporting the PST file format documentation effort. It allows the user to browse the internal structures of a PST file.

PSTViewTool is a MFC/C++ app developed in Visual Studio. Other than MFC, it has no external dependencies.

PSTViewTool is largely complete with respect to its goals, and it is no longer actively being enhanced. However, patches and bug reports are welcome.

For reusable code, you should refer to the PST File Format SDK: http://pstsdk.codeplex.com/

CodePlex - PST File Format SDK

“PST File Format SDK (pstsdk) is a cross platform header only C++ library for reading PST files.

Quick Start Guide For Developers (for developers working on PST File Format SDK)
Quick Start Guide For Users (for developers using PST File Format SDK in other projects)

…”

PST File Format SDK - Quick Start Guide For Users

“Using PST File Format SDK in your project is extremely simple.

  1. Unzip PST File Format SDK into a directory of your choosing (e.g, C:\libraries\pstsdk)
  2. Unzip Boost v1.42 into a directory of your choosing (e.g, C:\libraries\boost)
  3. Make sure the PST File Format SDK directory is in your compilers include path
  4. Make sure the Boost directory is in your compilers include path


See the Documentation page for a quick start guide.

Take a look at pstsdk/doc/html/index.html for an in depth API Reference.

Try to read [MS-PST], the published file format documentation on the PST, if you're doing any serious work. It's also included in pstsdk/doc - I included it because various structures in the SDK are annotated with the section of MS-PST they describe/implement; and such sections numbers are likely to change in the future as the document is updated. The version of the document distributed with PST File Format SDK may be out of date, but the section numbers in it will correspond to the sections the API reference links to.

…”

Most of you probably won’t care about this, but I think this is awesome!

I can’t wait to see some of the stuff that’s going to come from the development community because of this (I’ll be keeping my eyes wide open for a Managed wrapper/implementation).

For my current field (i.e. Litigation support, electronic data discovery [EDD], Electronically stored information [ESI], etc) this could be huge. The MS-PST Doc was one thing, this is a whole other ball of wax.

 

Related Past Post XRef:
MS-PST file format specification released. Yep, the full and complete specification for Outlook PST’s is now just a download away.
PST File Format Documentation coming…

Outlook Redemption 4 Released

I'll Need This Later Note To Self: .Net and MAPI/CDO Don't Mix
VB.NET DLL Wrapper For C MAPIEx Extended MAPI

The Microsoft Office Visualization Tool (OffVis) – Spelunk (view, browse, peek into, etc) Microsoft Office Binary Format files
Microsoft Office (DOC, XLS, PPT) Binary File Format Specifications Released – We’re talking the full technical specification… (The [MS-DOC].pdf alone is 553 pages of very dense specification information)
DOC, XLS and PPT Binary File Format Specifications Released (plus WMF, Windows Compound File [aka OLE 2.0 Structured Storage] and Ink Serialized Format Specifications and Translator to XML news)
Microsoft Office Binary File Format Specifications Coming to a Download Near You...

4 comments:

thoward37 said...

Ask and you shall receive. As soon as I heard about the PST SDK, I started a project to port it to managed code...

Check it out at:
http://pstsdknet.codeplex.com

Thanks,
Troy

Greg said...

Awesome! Thanks Troy!

(I feel a blog post about your project coming... ;)

Rafi said...

Any word about the SDK's compatibility with .Net 4.5 or VS2013?

Greg said...

Not that I've heard nor can see in the different CodePlex projects