2

我正在尝试将演示文稿保存为 VSTO 2012(C#) 中的 WMV 文件,这需要一段时间,保存后,关闭 powerpoint 并显示媒体。但是我无法确定何时保存完成,如果我在保存完成之前关闭应用程序,一切都会出错,没有文件!SaveAs 方法显然是异步的,所以我想知道是否有办法实现保存过程完成。像 application.isBusy 之类的东西?!

Microsoft.Office.Interop.PowerPoint.Presentation objPres = ppPresens.Open(strPresentationFile, MsoTriState.msoFalse, MsoTriState.msoTrue, MsoTriState.msoTrue);

objPres.SaveAs(filePath, PpSaveAsFileType.ppSaveAsWMV, MsoTriState.msoTrue);
4

2 回答 2

0

我认为您可能想查看EApplication_PresentationSaveEventHandler,它发生在保存任何打开的演示文稿之前。希望这会为您指明正确的方向。

您可以使用以下代码片段注册此事件:

Application.PresentationSave += new EApplication_PresentationSaveEventHandler(Application_PresentationSave);
于 2013-07-02T14:47:23.000 回答
0

我认为您可以为此查询 ppMediaTaskStatus。

您可以在PPT的VBA IDE的对象浏览器中查看它的各种值

于 2013-07-02T14:57:28.123 回答