我正在编写一个简单的模块,它使用Microsoft.Office.Interop.PowerPoint来确定PowerPoint幻灯片是否处于活动状态,如果是,则确定当前正在显示哪个幻灯片。当我使用Microsoft.Office.Interop.PowerPoint.Presentation在我的代码中打开演示文稿时,这非常有用。如果可能的话,我想检查一下Power Point的实例是否已经打开,如果是这样的话,请附上它而不是打开一个新的实例。
TIA
答案 0 :(得分:3)
创建新的Interop.PowerPoint.Application
并检查您的文件是否在Presentations
集合中。
与Word或Excel不同,PowerPoint是单实例应用程序;您的新Application
实例将自动连接到PowerPoint的任何打开副本。
答案 1 :(得分:2)
您可以致电Marshal.GetActiveObject ("Powerpoint.Application")
进行检查 - 如果powerpoint未运行,则会出现异常...请参阅http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.marshal.getactiveobject.aspx
如果它正在运行,这会给你一个对象......