C# 操作 Project

1、先将Project 的 dll 自制粘贴到工程项目的Bin文件夹下:

我的Dll在安装目录 F:/Program Files/Microsoft Visual Studio 9.0/Visual Studio Tools for Office/PIA/Office11/Microsoft.Office.Interop.MSProject.dll 里.

 

2、然后在工程项目中引用Dll

 

3、再:using MSProject=Microsoft.Office.Interop.MSProject;

 

一个读取的例子:

            MSProject.ApplicationClass prj = new MSProject.ApplicationClass();
            string prjFileName = @"d:/质量.mpp";

            prj.FileOpen(prjFileName, true, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, MSProject.PjPoolOpen.pjPoolReadOnly, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
            foreach (MSProject.Project proj in prj.Projects)
            {
                foreach (MSProject.Task task in proj.Tasks)
                {
                    string str = "";

                    int iTaskLevel = task.OutlineLevel;
                    for (int j = 0; j < iTaskLevel; j++)
                    {
                        str += "---";
                    }
                    Response.Write(str + task.Name + "++++++" + task.Start + "+++++" + task.Finish + task.ResourceNames.ToString() + "<br/>");
                }
            }

            prj.FileClose(MSProject.PjSaveType.pjDoNotSave, false);
            prj.Quit(MSProject.PjSaveType.pjDoNotSave);

 

 

一个生成Project 文档的例子:

 

            MSProject.ApplicationClass prj = new MSProject.ApplicationClass();
            prj.Visible = true;
            prj.FileNew(Type.Missing, Type.Missing, Type.Missing, false);
            MSProject.Project myProject = prj.ActiveProject;

            MSProject.Task task=null;
            task = myProject.Tasks.Add("zhi",1);
            task.Start = "2008-8-1";
            task.Finish = "2008-8-18";
            task.SetField(MSProject.PjField.pjTaskNotes, "Task1");


            task = null;
            task = myProject.Tasks.Add("wenzhixing",2);
            task.Start = "2008-8-8";
            task.Finish = "2008-8-28";
            task.OutlineLevel = 2;
            task.SetField(MSProject.PjField.pjTaskResourceNames, "wenzhixing,wen,zhi");
           
            task = null;
            task = myProject.Tasks.Add("wen", 3);
            task.Start = "2008-8-11";
            task.Finish = "2008-8-18";
            task.SetField(MSProject.PjField.pjTaskNotes, "Task2");
            task.Notes += "hehe";
            task.OutlineLevel = 1;

 

            task = null;
            task = myProject.Tasks.Add("wen", 4);
            task.Start = "2008-8-18";
            task.Finish = "2008-8-28";
            task.OutlineLevel = 2;
            task.SetField(MSProject.PjField.pjTaskResourceNames, "wenzhixing,wen,zhi");

 

 

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值