附加到 Power Point 的打开实例

发布于 2024-11-25 10:18:17 字数 238 浏览 0 评论 0原文

我正在编写一个简单的模块,它使用 Microsoft.Office.Interop.PowerPoint 来确定 PowerPoint 幻灯片是否处于活动状态,如果是,当前正在呈现哪张幻灯片。当我使用 Microsoft.Office.Interop.PowerPoint.Presentation 在代码中打开演示文稿时,这非常有用。如果可能的话,我想检查 Power Point 实例是否已打开,如果是,则附加到它而不是打开新实例。

TIA

I am writing a simple module that uses Microsoft.Office.Interop.PowerPoint to determine if a PowerPoint slideshow is active and if so which slide is currently being presented. This works great when I use Microsoft.Office.Interop.PowerPoint.Presentation to open the presentation in my code. If possible, I want to check to see if an instance of Power Point is already open and if so attach to it instead of opening a new instance.

TIA

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

累赘 2024-12-02 10:18:17

创建一个新的 Interop.PowerPoint.Application 并检查您的文件是否在 Presentations 集合中。

与 Word 或 Excel 不同,PowerPoint 是单实例应用程序;您的新 Application 实例将自动连接到任何打开的 PowerPoint 副本。

Create a new Interop.PowerPoint.Application and check whether your file is in the Presentations collection.

Unlike Word or Excel, PowerPoint is a single-instance application; your new Application instance will automatically connect to any open copy of PowerPoint.

半世蒼涼 2024-12-02 10:18:17

您可以通过调用 Marshal.GetActiveObject ("Powerpoint.Application") 进行检查 - 如果 powerpoint 未运行,它会给出异常...请参阅 http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.marshal.getactiveobject.aspx

如果它正在运行,这会给你一个对象...

you can check by calling Marshal.GetActiveObject ("Powerpoint.Application") - it gives an exception if powerpoint is not running... see http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.marshal.getactiveobject.aspx

If it is running this gives you an object...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文