【问题标题】:How to find out if application is busy in VSTO如何在 VSTO 中查看应用程序是否忙
【发布时间】:2013-07-02 03:13:42
【问题描述】:

我正在尝试将演示文稿保存为 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);

【问题讨论】:

    标签: c# .net vsto powerpoint


    【解决方案1】:

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

    您可以使用以下代码 sn-p 注册此事件:

    Application.PresentationSave += new EApplication_PresentationSaveEventHandler(Application_PresentationSave);
    

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-03-21
        • 2014-10-10
        • 2013-06-26
        • 1970-01-01
        • 1970-01-01
        • 2019-03-20
        相关资源
        最近更新 更多