2

我正在尝试打开一个 PowerPoint 演示文稿,并将其隐藏。我这样做是这样的:

app = new Microsoft.Office.Interop.PowerPoint.Application();
string presentation = "C:\\presentation.pptx";

Presentation p = app.Presentations.Open(presentation, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);

这是最简单的事情,但我收到一条错误消息:

应用程序(未知成员):请求无效。没有活动的演示文稿。

但是,如果我将最后一个参数(即 WithWindow 参数)切换为MsoTriState.msoTrue,则演示文稿将正常打开。

4

3 回答 3

2

问题中提供的代码可以正常工作,但有一个重要说明:

在 C# 中,您必须保留Application.Visible属性的默认值:

var application = new Application();
var document = application.Presentations.Open(fileName, MsoTriState.msoFalse, MsoTriState.msoFalse, 
    WithWindow: MsoTriState.msoFalse);

如果您明确设置Application.Visible属性,MsoTriState.msoFalse您将收到“不允许隐藏应用程序窗口”错误。

于 2018-11-28T08:39:41.343 回答
1

您是否有任何其他可能导致该错误的加载项?我运行了您的代码(来自 VBA)并且运行良好。

于 2013-09-30T09:47:26.353 回答
0

我试过这个,它有效:

Presentation p = app.Presentations.Open(presentation,0, 0, 0);
于 2021-08-14T19:45:06.023 回答