Seite 1 von 1

Powerpoint listener für Präsentationsmodus

Verfasst: Samstag 20. August 2022, 09:58
von Rene1303
Hallo zusammen,

Ich habe unzählige Webseiten durchgemacht, aber bin nicht auf das gewünschte Ergebnis gekommen.
Ich würde gern ein Event aus Powerpoint abgreifen und zwar, wenn eine Präsentation läuft. Hier soll immer beim erreichen der letzten Folie in der laufenden Präsentation ein Event auslösen. Die Präsentation wird in einer Dauerschleife laufen. Sobald dann beim neuen Beginn der Präsentation und folglich das erreichen der letzten Folie angelangt, soll erneut ein Event ausgelöst werden.

Hat jemand eine Idee wie ich sowas realisieren kann / lässt?

Vielen Dank für eure Unterstützung.

Re: Powerpoint listener für Präsentationsmodus

Verfasst: Samstag 20. August 2022, 10:01
von Sirius3
Warum muss das PowerPoint sein? Wenn es auch PDF sein kann, wird die ganze Sache wahrscheinlich einfacher.

Re: Powerpoint listener für Präsentationsmodus

Verfasst: Samstag 20. August 2022, 10:38
von Rene1303
Es ist so, dass die Powerpoint ja gewisse Effekte beim Slidewechsel hat und es auch mal eine andere Präsentation sein kann. So muss nicht erst noch alles extra abgespeichert werden. Daher wollte ich das direkt beim Ausführen der Präsentation haben.

Re: Powerpoint listener für Präsentationsmodus

Verfasst: Samstag 20. August 2022, 10:59
von Rene1303
Was ich mir auch schon überlegt hatte, ist die Präsentation als reine Bildschirmpräsentation zu speichern und dann mit Modul os oder subprocess zu starten. Nur dann ist dies zwar gestartet, aber ich bräuchte ja noch das Event beim erreichen der letzten Folie und müsste dann die Bildschirmpräsentation schließen und nachher erneut öffnen. Da die Bildschirmpräsentation mir ja kein Event liefern kann, denke ich zumindest und ich auch nicht die genaue Dauer immer kenne, ist ja von der Anzahl der Folien abhängig. Komme ich hier mit meinen Gedanken nicht weiter.

Re: Powerpoint listener für Präsentationsmodus

Verfasst: Samstag 20. August 2022, 13:19
von __deets__
PowerPoint kann VBA Basic. Wenn es eh immer die gleiche Präsentation ist, kann man damit doch einfach ein Event erzeugen.

Re: Powerpoint listener für Präsentationsmodus

Verfasst: Samstag 20. August 2022, 13:22
von Rene1303
Kann man dieses VBA Event auch mit an python übergeben oder kann python das dann abgreifen?

Re: Powerpoint listener für Präsentationsmodus

Verfasst: Samstag 20. August 2022, 13:50
von Sirius3
Powerpoint kann man auch per DCOM steuern, aber die Dokumentation dazu ist furchtbar schlecht. Da mußt Du Dich selbst per trial-and-error durcharbeiten.

Re: Powerpoint listener für Präsentationsmodus

Verfasst: Samstag 20. August 2022, 14:04
von __deets__
Rene1303 hat geschrieben: Samstag 20. August 2022, 13:22 Kann man dieses VBA Event auch mit an python übergeben oder kann python das dann abgreifen?
VBA kann “alles” AFAIK. Du könntest also zb ein web request oder einen anderen IPC Mechanismus nutzen.

Re: Powerpoint listener für Präsentationsmodus

Verfasst: Samstag 20. August 2022, 14:54
von Sirius3
Kein Grund, sich mit VBA rumzuschlagen. Wie schon geschrieben, kann man Powerpoint direkt aus Python heraus per pywin32 bedienen: https://medium.com/@chasekidder/control ... f6f6bf3f2d
Somit kann man natürlich auch bis zur letzten Seite vorgehen (https://docs.microsoft.com/en-us/office ... wview.next) und dann am Ende irgendwas machen.

Re: Powerpoint listener für Präsentationsmodus

Verfasst: Montag 22. August 2022, 11:55
von Sirius3
Hier mal das Ganze als Beispiel-Code:

Code: Alles auswählen

import win32com.client
powerpoint = win32com.client.Dispatch('PowerPoint.Application')
presentation = powerpoint.Presentations.Open(r'C:\...\presentation.pptx')
view = presentation.SlideShowSettings.Run().View
while view.State == 1:
    view.Next()
view.Exit()
presentation.Close()