4

我需要从网络上的 .mpp 文件中提取数据,并将其与来自多个不同数据库的其他数据相结合。该应用程序可以用 Perl、VB6、VB.net 或 C# 编写,但必须从基于 Windows 的服务器轻松调度。

你会推荐什么来提取 MS Project 数据而无需用户干预?

是否有适用于 MS Project 的任何 ODBC 驱动程序?

是否有用于打开 .mpp 和读取活动数据的模块(用于 Perl、VB、VB.net 或 C#)?

4

5 回答 5

4

我建议使用 MPXJ ( mpxj.sf.net ) 从 Microsoft Project 文件中提取数据。不要因为它最初是一个 Java 库而被推迟——由于 IKVM 的魔力,MPXJ 的当前版本包括本机 .net dll 以及原始 Java JAR 文件。

免责声明:我维护 MPXJ。

于 2008-10-16T13:49:23.610 回答
3

MPP 确实有自己的对象模型,可用于访问其中的数据。该信息应在此处提供:http: //msdn.microsoft.com/en-us/office/aa905469.aspx

于 2008-09-02T03:58:41.830 回答
2

希望以下对您有所帮助...

http://www.codeproject.com/KB/cs/PrjXlsRpt.aspx

Rgds

于 2009-01-12T06:04:07.793 回答
2

为了读取 MPP 数据,您可以使用Aspose.Tasks for .NET。该组件是一个普通的 .NET 程序集,可以与任何 .NET 应用程序一起使用。它提供了简单的 API 来访问项目元素和数据

披露:我在 Aspose 担任开发人员布道师。

于 2011-08-10T08:12:46.430 回答
1

我也有同样的需求。这是我到目前为止发现的。微软项目有一个 OLEDB 提供程序,最高版本为 MP 2007。如果谷歌它,有足够的站点引用连接字符串,但这里是一个引用:

oConn.Open "Provider=Microsoft.Project.OLEDB.9.0;" & _
           "Project Name=c:\somepath\myProject.mpp"

这种方法的问题似乎是您必须在服务器上安装 MS Project。无论如何,这很麻烦,而且我不可能使用托管环境。

所以你要解析.mpp。正如上面一位评论者所说,MPXJ 是一个优秀的库,我可以等待,所以我正在等待他们发​​布 .NET 版本。如果您决心完成它,请获取代码并查看他们在做什么。除此之外,在他们的源代码/评论中,没有(据我所知)该格式的文档。

于 2008-11-10T06:48:08.447 回答