1

現在開いているプレゼンテーションを .wmv ファイルに変換する PowerPoint アドインを開発しました。

それはすべてうまく機能します。プレゼンテーションの変換中は、PowerPoint の下部に進行状況バーと赤い X が表示されます。このバーを押すと、変換プロセスをキャンセルできます。

このキャンセルボタンをプログラムで呼び出す方法はありますか?

これは、呼び出して終了するのを待つために使用するコードですが、進行中にキャンセルできるようにしたいと考えています。

private void frmUpload_Load(object sender, EventArgs e)
    {
        try
        {
            progressBarUpload.Value = 0;
            string exportName = "video_of_presentation";
            string exportPath = @"C:\Windows\Temp\{0}.wmv";

            // Export the currently open presentation
            Microsoft.Office.Interop.PowerPoint.Application ppApplication = null;
            ppApplication = new Microsoft.Office.Interop.PowerPoint.Application();
            ppApplication.Activate();
            ppApplication.ActivePresentation.SaveAs(String.Format(exportPath, exportName), Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType.ppSaveAsWMV);
            lblUploadStatus.Text = "Status: Converting …";

            new Thread(() =>
            {
                Thread.CurrentThread.IsBackground = true;
                /* run your code here */
                do
                {
                    System.Threading.Thread.Sleep(500);

                }
                while (ppApplication.ActivePresentation.CreateVideoStatus != Microsoft.Office.Interop.PowerPoint.PpMediaTaskStatus.ppMediaTaskStatusDone);

                backgroundWorker.RunWorkerAsync();

                SetControlPropertyValue(lblUploadStatus, "text", "Status: Uploading …");

            }).Start();
        }
        catch
        {
            lblUploadStatus.Text = "Status: Error Converting File.";
        }
    }

どんな助けでも大歓迎です。

トレヴ

4

1 に答える 1

0

MSFTによると、これは不可能です:(

スレッドはこちら:

http://social.msdn.microsoft.com/Forums/vstudio/en-US/9308ca45-ec8e-42df-8a5f-a150468a6213/cancel-microsoftofficeinteroppowerpointppsaveasfiletype

トレヴ

于 2013-08-08T08:37:37.557 に答える