`
mjm13
  • 浏览: 49086 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

C# 操作mpp文件

阅读更多
所需设置
   在工程中增加引用Microsoft Project 11.0 Object Library,该引用在com选项卡中。
注意    
    Microsoft Project 11.0 Object Library是本机安装Microsoft Project以后才能引用的。
   如果引用之后运行程序报错:
检索 COM 类工厂中 CLSID 为 {…………} 的组件时失败,原因是出现以下错误: …………。

请在控制面板-》管理工具-》组件服务-》计算机-》我的电脑-》DCom配置-》找到Microsoft Project Basic
之后单击属性打开此应用程序的属性对话框。
单击"安全"选项卡,分别在"启动和激活权限"和"访问权限"组中选中"自定义",
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);
        }
    }
}

分享到:
评论

相关推荐

    java读取mpp文件

    java读取mpp文件,来生成mpp文件的jar包。

    MPP文件 阅读器

    MPP文件 阅读器

    解析mpp文件的jar包

    java中,解析mpp文件的jar包:内含mpxj.jar和poi-3.6-20091214.jar,解析mpp文件,即计划文件所需的jar包

    Project软件实用模板(MPP文件)11个场景模板.zip

    Project软件实用模板(MPP文件) 涵盖11个场景的模板,办公自动化项目、某机构项目管理实施计划、项目变更案例、项目计划变更记录、优化类项目计划模版、企业信息化项目等。

    ms+project模板(mpp文件).zip

    ms+project模板(mpp文件),该资源供自己使用,请大家不要盲目下载!ms+project模板(mpp文件),该资源供自己使用,请大家不要盲目下载!ms+project模板(mpp文件),该资源供自己使用,请大家不要盲目下载!

    MPP文件破解

    MPP文件破解

    com读取mpp文件

    vs2015 使用com读取mpp文件 必须安装ms project 否则读取失败

    java读取mpp文件示例代码

    java读取Microsoft Project的MPP文件的示例代码,已调试通过

    spv mpp文件打开

    安装后*。mpp文件可以打开。需要自己去官网填下信息,会给你KEY然后可以用了.我用了还行。不过功能不完全

    Java解析Project_mpp文件.docx

    Java解析Project_mpp文件.docx

    JavaMSProject导出.rar

    java生成project形式的xml、mpp 将xml形式的Project文件转成 mpp 走过的弯路 1.Project 直接导出 mpp文件,没有办法自定义列。 2.jacob 导出mpp文件 jawin.dll只支持32位。 3.Aspose-Tasks-Java不收费的版本只能导出...

    project mpp文件

    这是网上下载的project mpp文件,供初学者和项目管理者等参考。

    project软件实用模板(MPP文件)

    projectprojectprojectprojectproject

    MS+Project软件实用模板(MPP文件

    MS+Project软件实用模板(MPP文件 MS+Project软件实用模板(MPP文件

    openproj MPP文件打开

    项目管理类的软件花费都比较高,OpenProj是一款开源的项目管理软件,且是免费的。实验室流量不多了,我未曾下载试用,不过看截图,应当是与 微软的Project类似。专门用于MPP文件打开

    非常好的mpp文件浏览软件

    要读写.mpp文件需要安装相应版本的Project,如果仅仅是观看MPP文件,可以下载名为Project Viewer的软件无需破解,安装即用!!

    openproj(打开mpp文件)

    mpp文件是项目管理常见的一种文件格式,但是,平时工作中,我们主要是看项目经理做好的文件,不用修改,安装庞大的微软的mp太大。

    MS project项目管理模板(.mpp文件)

    办公自动化项目.mpp 共享资源库.mpp 某机构项目管理实施计划.mpp 企业信息化项目群.mpp 视频保安系统项目.mpp 项目变更案例(变更后).mpp 项目变更案例(变更前).mpp 项目计划变更记录.mpp 项目群案例.mpp 优化类项目...

    mpp文件打开工具(Steelray Project Viewer) 4.4.2 免费版

    mpp文件。作为Microsoft Project的合作伙伴,提供给你Project完美的补充。 安装步骤: 1、解压文件Steelray Project Viewer.zip; 2、安装包为在Steelray Project Viewer.zip\setup下的spv_4_4_2_0_jre.msi; 3、...

    mpp格式文件怎么打开,mpp文件用什么软件打开

    使用project打开 https://pan.baidu.com/s/1luiq3xsg_GHrOY2PXYXCoA Project专门用于项目管理的软件,可以打开和编辑MPP文件

Global site tag (gtag.js) - Google Analytics