C#操作mpp文件代码参考
2010-11-14 16:34
357 查看
代码如下:
using System; using System.Collections.Generic; using System.Text; using Microsoft.Office.Interop.MSProject; namespace ConsoleApplication { class Program { static void Main(string[] args) { Program pro = new Program(); pro.readMpp(); // pro.callMacro(); //pro.createMpp(); } //调用mpp中定义的宏 public void callMacro() { Object missing = Type.Missing; ApplicationClass prj = new ApplicationClass(); //打开mpp文件 prj.FileOpen("C:/Documents and Settings/Administrator/My Documents/test.mpp", false, missing, missing, missing, missing, missing, missing, missing, missing, missing, PjPoolOpen.pjPoolReadWrite, missing, missing, missing, missing); //调用名称为testMacro prj.Macro("testMacro"); //关闭,但不保存mpp prj.FileClose(PjSaveType.pjDoNotSave, false); prj.Quit(PjSaveType.pjDoNotSave); } public void readMpp() { Object missing = Type.Missing; ApplicationClass prj = new ApplicationClass(); prj.FileOpen("D:/test.mpp", false, missing, missing, missing, missing, missing, missing, missing, missing, missing, PjPoolOpen.pjPoolReadWrite, missing, missing, missing, missing); foreach (Project proj in prj.Projects) { foreach (Task task in proj.Tasks) { System.Console.WriteLine("|" + task.Name + "|" + task.UniqueID + "|" + task.ResourceNames + "|"); } } prj.FileClose(PjSaveType.pjSave, false); prj.Quit(PjSaveType.pjSave); System.Console.Read(); } public void createMpp() { Object missing = Type.Missing; ApplicationClass prj = new ApplicationClass(); PjFileFormat format = PjFileFormat.pjMPP;//format定义 prj.Visible = true; prj.FileNew(Type.Missing, Type.Missing, Type.Missing, false); Project myProject = prj.ActiveProject; Task task = null; task = myProject.Tasks.Add("zhi", 1); task.Start = "2008-8-1"; task.Finish = "2008-8-18"; task.SetField(PjField.pjTaskNotes, "Task1"); task = null; task = myProject.Tasks.Add("wenzhixing", 2); task.Start = "2008-8-8"; task.Finish = "2008-8-28"; task.ActualStart = "2008-9-8 8:00"; task.ActualFinish = "2008-9-28 17:00"; task.OutlineLevel = 2; task.SetField(PjField.pjTaskResourceNames, "wenzhi"); task = null; task = myProject.Tasks.Add("wen", 3); task.Start = "2008-8-11"; task.Finish = "2008-8-18"; task.SetField(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(PjField.pjTaskResourceNames, "wenzhi"); prj.FileSaveAs("C:/Documents and Settings/Administrator/My Documents/mjm.mpp", format, missing, false, missing, missing, missing, missing, missing, missing, PjPoolOpen.pjPoolReadWrite, missing, missing, missing, missing, missing, missing, missing, missing); } } }
相关文章推荐
- C#各种文件操作的代码与注释
- 在aspx文件里写C#代码(各种插入,选择,删除等操作,重要)
- C# Winform 调用系统接口操作 INI 配置文件的代码
- C# CLRInsideOut 托管代码与非托管代码互操作,产生相关调用代码的好工具 C++ 头文件转C# 的好工具(转
- 一个用 C# 实现操作 XML 文件的公共类代码
- C#对文件/文件夹操作代码汇总
- c#操作.mpp文件
- C#代码对目录操作新建,删除 获取目录下文件列表等
- C#各种文件操作的代码与注释
- 代码验证C#执行”文件打开关闭操作“耗时
- C# CLRInsideOut 托管代码与非托管代码互操作,产生相关调用代码的好工具 C++ 头文件转C# 的好工具
- C#剪切板编程操作图片、音乐、txt==文件(神样的代码,找了好久)
- C#文件简单操作(文件流)代码解释见图
- xml学习(三)---利用xml文件实现数据岛功能(网页显示xml文件中的内容免C#代码操作xml文件)
- C#各种文件操作的代码与注释
- !!无须定义配置文件中的每个变量的读写操作,以下代码遍历界面中各个c#控件,自动记录其文本,作为配置文件保存
- C# 文件操作--代码演示
- .Net/C# 封装磁盘目录文件搜索功能的工具类 (实现了与搜索相关的事件,以便插入客户处理代码)
- C#文件操作
- 用C#获取当前函数名,当前代码行,源代码文件