有没有办法检测功率点演示何时通过python进入全屏?

时间:2012-05-15 18:55:38

标签: python windows powerpoint

我试图想出一个。如果Microsoft Power Point正在运行,并且b。如果是这样,它是以全屏模式还是“幻灯片放映”模式运行。

检测PowerPoint的实例是否正在运行非常简单。

def check_for_ppt():
    global ppt 
    stime = time.time()
    f = (os.popen('tasklist').read())
    if 'POWERPNT.EXE' in f:
        ppt = True
    else: 
        ppt = False

但我不确定从哪里开始。有没有办法检测另一个程序的状态?我想在紧张的情况下,我可以对屏幕的极端部分进行ping操作并测试像素是否返回黑色(就像它们在演示期间一样),并且只希望我不会得到太多的误报。但除此之外,我不确定。

可以将python'挂钩'到另一个程序中,看看发生了什么?

2 个答案:

答案 0 :(得分:2)

您可以使用PowerPoint's COM interfacewin32com.client module

执行此操作

我这里没有编写代码的PPT,但看起来你必须连接到PPT并获取Application.Presentations对象并找到活动的Presentation。当您拥有有效Presentation时,请获取其SlideShowSettings并查看其ShowType以获取ppShowTypeKiosk。

答案 1 :(得分:0)

您必须使用PowerPoint互操作,这将使您能够访问PPT演示文稿正在执行的各种“内容”或它所处的状态。这不是一项简单的任务,因为您将不得不用你的Python应用程序以某种方式工作。

我个人并不熟悉Python,所以我不知道你要为此做些什么。如果你不能直接这样做,可能是围绕Interop的.NET包装器,它将公开Python应用程序所需的内容。我有使用.NET和interops的经验,使用所有MS技术并不简单。

这是一个非常通用的答案,我意识到。无论语言或IDE如何,我都认为这不是一件简单的事情。