I was doing research into this a while back (needed to split .pst files that were over the 2GB limit, preserving to info that would be lost if we went the truncate route), but it turns out you have to use the Outlook object model to interact with them, and Outlook has to be running at the time. The structure specs are closed, and you'd probably have to pay thousands to get ahold of that info (which would explain why programs that do interact with .pst's tend to be very expensive).
So, if you're trying to do what I was doing, you're pretty much SOL.