revit 二次开发 MSproject

Project文件读取:

方法1:Microsoft.Project.OLEDB.11.0

string strConn = "Provider=Microsoft.Project.OLEDB.11.0;Project Name=" + fileName;
DataSet ds = new DataSet();
using (OleDbConnection conn = new OleDbConnection(strConn))
{
conn.Open();
string[] tablesName = new string[] { "Assignments", "Tasks", "Resource" };
for (int k = 0; k < tablesName.Length; k++)
{
string strTableName = tablesName[k];
string str = "select * from " + strTableName;
OleDbDataAdapter da = new OleDbDataAdapter(str, conn);
da.Fill(ds, strTableName.ToLower());
da.Dispose();
}
conn.Close();
conn.Dispose();
}
return ds;

方法2:Microsoft.Office.Interop.MSProject

Object missing = Type.Missing;
ApplicationClass prj = new ApplicationClass();
//打开mpp文件 
prj.FileOpen(fileName, true, missing, missing, missing, missing, missing, missing, missing,
missing, missing, PjPoolOpen.pjPoolReadOnly, missing, missing, missing, missing);
return prj.Projects;
以上两个方法都需要安装Microsoft.Project

方法3:mpxj

ProjectReader reader = ProjectReaderUtility.getProjectReader(fileName);
ProjectFile projectFile = reader.read(fileName);
List tasks = projectFile.getAllTasks();
for (int i = 0; i < tasks.size(); i++)
{
Task task = tasks.get(i) as Task;
}
 原文地址 https://www.cnblogs.com/lxfl2/p/3600135.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值