<p>I need to extract data from a .mpp file on the network and combine it with other data from several different databases. The application can be written in Perl, VB6, VB.net or C# but must be easily scheduled from a Windows based server.</p>

<p>What would you recommend to extract the MS Project data with no user intervention? </p>

<p>Is there any ODBC drivers available for MS Project? </p>

<p>Are there any modules (for Perl, VB, VB.net or C#) for opening a .mpp and reading activity data?</p>

[{'answer_id': 38787, 'author': 'Vaibhav', 'author_id': 380, 'author_profile': 'https://Stackoverflow.com/users/380', 'pm_score': 2, 'selected': False, 'text': '<p>MPP does have its own object model that can be used to access data in it. The info should be available here: <a href="http://msdn.microsoft.com/en-us/office/aa905469.aspx" rel="nofollow noreferrer">http://msdn.microsoft.com/en-us/office/aa905469.aspx</a></p>\n'}, {'answer_id': 208639, 'author': 'Jon Iles', 'author_id': 26415, 'author_profile': 'https://Stackoverflow.com/users/26415', 'pm_score': 3, 'selected': True, 'text': '<p>I would recommend using MPXJ (<a href="http://mpxj.sf.net" rel="nofollow noreferrer">mpxj.sf.net</a>) to extract data from Microsoft Project files. Don\'t be put off by the fact that it was originally a Java library - the current release of MPXJ includes native .net dlls as well as the original Java JAR file, thanks to the magic of IKVM.</p>\n\n<p>Disclaimer: I maintain MPXJ.</p>\n'}, {'answer_id': 277232, 'author': 'Michael ', 'author_id': 33427, 'author_profile': 'https://Stackoverflow.com/users/33427', 'pm_score': 1, 'selected': False, 'text': '<p>I have the same need. Here is what I found so far.\nThere is an OLEDB provider for microsoft projects, up to version MP 2007. \nIf Google it, there are enough sites quoting the connection string, but here is the one quote:</p>\n\n<pre><code>oConn.Open "Provider=Microsoft.Project.OLEDB.9.0;" &amp; _\n           "Project Name=c:\\somepath\\myProject.mpp"\n</code></pre>\n\n<p>The problem with this approach seems to be that you have to install MS Project on the server. It is nuisance in any case, and an impossibility for me using hosting environtment.</p>\n\n<p>So you are down to parsing .mpp. MPXJ is an excellent library as one commenter above suggests, and  I can afford to wait, so I am waiting for them to release .NET version.\nIf you are resolved to get it done, get the code and see what they are doing. Other then in their source code/comments there is no (to my knowledge) documentation of the format.</p>\n'}, {'answer_id': 434578, 'author': 'Community', 'author_id': -1, 'author_profile': 'https://Stackoverflow.com/users/-1', 'pm_score': 2, 'selected': False, 'text': '<p>Hope the following helps...</p>\n\n<p><a href="http://www.codeproject.com/KB/cs/PrjXlsRpt.aspx" rel="nofollow noreferrer">http://www.codeproject.com/KB/cs/PrjXlsRpt.aspx</a></p>\n\n<p>Rgds</p>\n'}, {'answer_id': 7007706, 'author': 'Shahzad Latif', 'author_id': 218065, 'author_profile': 'https://Stackoverflow.com/users/218065', 'pm_score': 2, 'selected': False, 'text': '<p>In order to read the MPP data you can use <a href="http://www.aspose.com/categories/.net-components/aspose.tasks-for-.net/default.aspx" rel="nofollow">Aspose.Tasks for .NET</a>. This component is a normal .NET assembly and can be used with any .NET application. It provides <a href="http://www.aspose.com/documentation/.net-components/aspose.tasks-for-.net/index.html" rel="nofollow">simple API to access project elements and data</a>. </p>\n\n<p>Disclosure: I work as developer evangelist at Aspose.</p>\n'}]
['https://Stackoverflow.com/questions/38769', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/4134/']