3

我是 .NET 的新手。我想制作一个将.pptx文件转换为.wmv的控制台应用程序。我已经设法使用powerpoint interop来做到这一点。但是我有一些问题。首先,如果我构建应用程序并将其转移到另一台计算机上,我会得到一个已为 COM 对象返回异常错误 HRESULT E_FAIL(我在两台 PC 中都有 powerpoint)。如果我在我写的那个上运行它,我一切正常。但不是第一次。这意味着当我启动我的 pc 和运行它我会得到同样的异常,第二次我会尝试运行它会正常运行。可能是什么问题?iguess with interop and powerpoint,但我无法弄清楚。

好的,这里是代码:

using Microsoft.Office.Core;
using Microsoft.Office.Interop.PowerPoint;
using PowerPoint = Microsoft.Office.Interop.PowerPoint;
using System.Runtime.InteropServices;
using System.IO;
using System;

  namespace Microsoft.Office.Interop.PowerPoint
 {
  class Program
  {

    static void Main(string[] args)
    {

        string fileName = args[0];
        string exportName = args[1];
        string exportPath = args[2];

        Microsoft.Office.Interop.PowerPoint.Application ppApp = new Microsoft.Office.Interop.PowerPoint.Application();
        ppApp.Visible = MsoTriState.msoTrue;
        ppApp.WindowState = PpWindowState.ppWindowMinimized;
        Microsoft.Office.Interop.PowerPoint.Presentations oPresSet = ppApp.Presentations;
        Microsoft.Office.Interop.PowerPoint._Presentation oPres = oPresSet.Open(fileName,
                    MsoTriState.msoFalse, MsoTriState.msoFalse,
                    MsoTriState.msoFalse);
        try
        {
            oPres.CreateVideo(exportName);
            oPres.SaveCopyAs(String.Format(exportPath, exportName),
                PowerPoint.PpSaveAsFileType.ppSaveAsWMV,
                MsoTriState.msoCTrue);
        }
        finally
        {
            ppApp.Quit();
        }
    }

}
}
4

1 回答 1

0

_Presentation.CreateVideo不会从 powerpoint 创建视频。它在PowerPoint中创建一个视频。无论如何,这就是文档所说的。

尝试_Presentation.SaveAs,然后使用PpSaveAsFileType.ppSaveAsWMV作为文件类型。

于 2016-01-05T21:20:59.863 回答