Microsoft Project (*.MPP) file format specification RRS feed

  • Question

  • We need to be able to import .MPP files into a desktop application. Using the Microsoft Project COM object model works in general, but there are many scenarios where the import is unreliable and the user experience suffers. Is there a published standard of the .MPP file format, like the one for Excel files, for example? Having this one would allow us to directly read from the .MPP file and bypass the Microsoft Project COM object model.

    Friday, February 5, 2016 4:15 PM


All replies

  • Hi Dan,

    As far as I know, the Open XML format supports for spreadsheets, Word documents and presentations currtly. I sugest that you dscribe the detail for the exact issue so others who have the same issue can share the experience with you.

    And since this issure is relative to Project, I would like move it to Project Customization and Programming forum.

    Regards & Fei

    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Monday, February 8, 2016 12:13 AM
  • The code that reads the MPP file using MS Project COM object model is extremely complicated by the fact Microsoft Project is single instance and there are many situations where an operation fails, however if the code retries the operation succeeds. There are also many situations where MS Project, although instructed not to, still displays some dialog to the end user and the IMessageFilter implementation becomes extremely complicated.

    This is why we want to bypass the MS Project COM object model and go directly at the MPP file level.

    There is an open source library that can read an MPP file and there's a tremendous amount of information that can be retrieved from it (using it is not an option, because it's written in Java). So we can "simply" take the needed information from that library source code, but it still seems odd to do so when Microsoft has pledged to an open standards policy.

    To repeat my question: is there a Microsoft-approved document that describes in detail the MPP file format?

    Monday, February 8, 2016 8:12 AM
  • No. Unfortunately there isn't. There used to be an OLEDB driver which worked very well.

    One alternative is to have a macro in Project that exports the data you need to a database. PMs would need to run it after updating but it works well, I've done it many times.

    Rod Gill
    Author of the one and only Project VBA Book

    • Marked as answer by Dan Vasilov Tuesday, February 9, 2016 5:46 AM
    Monday, February 8, 2016 9:02 PM
  • Hello, Rod Gill!

    I don't count your answer as useful. If people ask you about MPP format from the company WHO INVENTED IT, hardly it's answer "we don't have it". YOU HAVE it, otherwise how do you read 'em?!

    Main point is why you HIDE this info from public? Don't you count your binary heap as a something valuable in science terms?? The only reason we need your MPP fantasies is that many people forced to use your Project tool and of course need integration with other software. Then why MS PREVENTS developers from knowing MPP internals? Are they so ugly? Too Complex? Well, may be, but again what prevents you from writing external library to read all that binary rubbish you "invented" for 20 years of Office existence? It's in your interest to HELP us integrate with your products.

    We don't need your excuses, we need clear answer why you hide information.

    Thursday, February 25, 2016 3:55 PM
  • Vincent_Thorn,

    You seem to be attacking Rod for giving the direct answer and your displeasure is misplaced. Neither Rod nor myself or any of us who response on these forms work for or have any association with Microsoft. We are all volunteers who give freely of our time to help users with questions/issues.

    So, "we" are not hiding information. "We" simply do not have it and "we" do not know the reason why Microsoft does not make it available to the public.


    Thursday, February 25, 2016 4:07 PM
  • John, I understand that some "side people" can answer forum questions, but as soon as question is serious, it's useless for "non-MS people" answer it - they have no proper info. As since this site is the only site where you can ask questions about MS products, official "support guys" from MS _must_ appear here to give true answer. But yes, usually they hide behind you to make feeling "nobody is responsible for anything".

    Unfortunately I don't know how to kick MS a$$ to come here and say why they hide format specs. Do you?

    Tuesday, March 1, 2016 11:25 AM
  • Hi Vincent,

    There are many routes to access support from Microsoft, including this free one, where the infrastructure is provided by Microsoft, the answers by the community.  If you require direct support from Microsoft then you can do that, and of course it is paid for.  

    Dan asked a serious one for sure, and in the 1st instance was fairly simple "is there a Microsoft-approved document that describes in detail the MPP file format?" -

    - the fact that you don't find the answer useful is irrelevant, the answer is correct.  Rod Gill is the community expert on customising MS Project, not only did he answer your question, but he suggested an alternative soln.

    Your follow up <rant> asks several questions, directed at Microsoft.  I suggest you provide direct feedback to Microsoft for MS Project at 

    Ben Howard [MVP] | web | blog | book | P2O

    Tuesday, March 1, 2016 12:50 PM