从命令行编译ms office互操作应用程序

时间:2009-07-02 19:18:36

标签: c# interop compilation powerpoint csc

如何使用csc.exe从命令行成功编译此代码,就我应该引用的dll而言。我希望这可以与Office 2007以及Office 2003一起使用。

我使用.Net Framework SDK 2.0。

我收到此编译错误:

(2,37):错误CS0234:命名空间“Microsoft.Office”中不存在类型或命名空间名称“Interop”(您是否缺少程序集引用?)

源代码:

using Microsoft.Office.Core;
using PowerPoint = Microsoft.Office.Interop.PowerPoint;

 namespace PPInterop
 {
 class Program
 {
    static void Main(string[] args)
    {
            PowerPoint.Application app = new PowerPoint.Application();
            PowerPoint.Presentations pres = app.Presentations;
            PowerPoint._Presentation file = pres.Open(@"C:\project\JavaTut1.ppt", MsoTriState.msoTrue, MsoTriState.msoTrue, MsoTriState.msoFalse);
            file.SaveCopyAs(@"C:\project\presentation1.jpg", Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType.ppSaveAsJPG, MsoTriState.msoTrue);
    }
  }
 }

2 个答案:

答案 0 :(得分:0)

您需要找到实现您引用的接口的dll的路径,然后查看csc.exe的命令行参数,以了解如何将这些引用添加到您的命令中。

答案 1 :(得分:0)

您需要包含Microsoft.Office.Interop.PowerPoint,路径应该类似于: C:\ Program Files \ Microsoft Visual Studio 9.0 \ Visual Studio工具用于Office \ PIA \ Office12 \ Microsoft.Office.Interop.PowerPoint.dll for 07并将Office12替换为Office11 for 03我相信