Batch - ESC Präsentation
Ich bin am verzweifeln und brauche dringend Hilfe
Ich versuche mal zu erklären:
Wir möchten in unserem Schaufenster eine PP Präsentation laufen lassen. Dazu habe ich einen Computer mit Windows XP. Die Präsentation soll Morgens um 8.00 Uhr starten und Abends um 22,00 Uhr beenden. Nun gut. (Der Computer soll in der zwischenzeit nur in den Ruhezustand gesetzt werden.
Nach etwa 3 Stunden habe ich herausgefunden, wie ich die Präsentation starten kann. (Geplante Task) Auch im Ruhezustand wird so die Präsentation gestartet.
Nun bringe ich es aber nicht vertig den PC wieder in den Ruhezustand zu bringen. Nicht einmal der Bildschirmschoner kommt wenn die Präsentation lauft. Also habe ich wieder Stundenlang gesucht. Ich glaube nun es gäbe eine Möglichkeit mit einem Batch (weis nicht einmal was das ist. Habe es aus verschiedenen Foren.) Dieser Batch sollte einfach nur die ESC Taste drücken damit die Präsentation schliesst, dann kann ich den Ruhezustand auf eine Minute runtersetzten. Ich kann einfach nicht mehr. Bitte helft mir Ich verstehe leider nichts von Batchs, da muss ich euch experten Fragen!
Lieber Gruss
Daniele
Änderungen:
01.04.2007 01:41 Uhr - Doppelpost am Ende des Beitrags gelöscht.
Dani (Moderator)
01.05.200718:52 - Weiterer Doppelpost gelöscht.
01.05.200718:53 - Dani darauf hingewiesen, dass wir den 1.Mai haben, nicht April.
//Biber
Ich versuche mal zu erklären:
Wir möchten in unserem Schaufenster eine PP Präsentation laufen lassen. Dazu habe ich einen Computer mit Windows XP. Die Präsentation soll Morgens um 8.00 Uhr starten und Abends um 22,00 Uhr beenden. Nun gut. (Der Computer soll in der zwischenzeit nur in den Ruhezustand gesetzt werden.
Nach etwa 3 Stunden habe ich herausgefunden, wie ich die Präsentation starten kann. (Geplante Task) Auch im Ruhezustand wird so die Präsentation gestartet.
Nun bringe ich es aber nicht vertig den PC wieder in den Ruhezustand zu bringen. Nicht einmal der Bildschirmschoner kommt wenn die Präsentation lauft. Also habe ich wieder Stundenlang gesucht. Ich glaube nun es gäbe eine Möglichkeit mit einem Batch (weis nicht einmal was das ist. Habe es aus verschiedenen Foren.) Dieser Batch sollte einfach nur die ESC Taste drücken damit die Präsentation schliesst, dann kann ich den Ruhezustand auf eine Minute runtersetzten. Ich kann einfach nicht mehr. Bitte helft mir Ich verstehe leider nichts von Batchs, da muss ich euch experten Fragen!
Lieber Gruss
Daniele
Änderungen:
01.04.2007 01:41 Uhr - Doppelpost am Ende des Beitrags gelöscht.
Dani (Moderator)
01.05.200718:52 - Weiterer Doppelpost gelöscht.
01.05.200718:53 - Dani darauf hingewiesen, dass wir den 1.Mai haben, nicht April.
//Biber
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 57925
Url: https://administrator.de/forum/batch-esc-praesentation-57925.html
Ausgedruckt am: 09.05.2025 um 14:05 Uhr
8 Kommentare
Neuester Kommentar
Hi,
ich hab mal kurz gegoogel und folgendes VBS-Script gefunden.
Das ganze einfach in eine VBS-Datei speichern und dann ebenfalls über Geplante Task ausführen.
mfg
andi
PS: Das Script hab ich nicht ausprobiert.
ich hab mal kurz gegoogel und folgendes VBS-Script gefunden.
set WSHShell = CreateObject("WScript.Shell")
WSHShell.Run "%windir%\system32\rundll32.exe powrprof,SetSuspendState"
set WSHShell = CreateObject("WScript.Shell")
WSHShell.Run "%windir%\system32\rundll32.exe powrprof,SetSuspendState"
Das ganze einfach in eine VBS-Datei speichern und dann ebenfalls über Geplante Task ausführen.
mfg
andi
PS: Das Script hab ich nicht ausprobiert.
Hi,
mit den PSTools vonSysinternals Microsoft geht es auch
http://www.microsoft.com/technet/sysinternals/utilities/psshutdown.mspx
Das ganze in eine vbs-Datei und als geplanten Task starten.
Wenn die psshutdown.exe nicht im selben Verzeichnis wie das Script liegt muss der komplette Pfad angegeben werden.
HTH.
gemini
mit den PSTools von
http://www.microsoft.com/technet/sysinternals/utilities/psshutdown.mspx
Set objShell = CreateObject("WScript.Shell")
objShell.Run "psshutdown.exe -d -t 0"
Wenn die psshutdown.exe nicht im selben Verzeichnis wie das Script liegt muss der komplette Pfad angegeben werden.
HTH.
gemini
Hallo Daniele,
du könntest, bevor der Rechner in den Standby geht,:
a) den Prozess terminieren
oder b) probieren, ob es zu Presentations.Open auch ein Presentations.Close gibt, resp. ob es so überhaupt möglich ist.
Bei den Parametern zu SlideShowSettings müsstest du ebenfalls eruieren, was sie genau bewirken.
Quellen: MS ScriptCenter
a) Terminate a Process
b) Run a Microsoft PowerPoint Slide Show
Gruß,
gemini
du könntest, bevor der Rechner in den Standby geht,:
a) den Prozess terminieren
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'POWERPNT.EXE'")
For Each objProcess in colProcessList
objProcess.Terminate()
Next
oder b) probieren, ob es zu Presentations.Open auch ein Presentations.Close gibt, resp. ob es so überhaupt möglich ist.
Bei den Parametern zu SlideShowSettings müsstest du ebenfalls eruieren, was sie genau bewirken.
Const ppAdvanceOnTime = 2
Const ppShowTypeKiosk = 3
Const ppSlideShowDone = 5
Set objPPT = CreateObject("PowerPoint.Application")
objPPT.Visible = True
Set objPresentation = objPPT.Presentations.Open("C:\Pfad\zu\Daniele's.ppt")
objPresentation.Slides.Range.SlideShowTransition.AdvanceTime = 2
objPresentation.Slides.Range.SlideShowTransition.AdvanceOnTime = TRUE
objPresentation.SlideShowSettings.AdvanceMode = ppAdvanceOnTime
objPresentation.SlideShowSettings.ShowType = ppShowTypeKiosk
objPresentation.SlideShowSettings.StartingSlide = 1
objPresentation.SlideShowSettings.EndingSlide = _
objPresentation.Slides.Count
Set objSlideShow = objPresentation.SlideShowSettings.Run.View
Do Until objSlideShow.State = ppSlideShowDone
Loop
a) Terminate a Process
b) Run a Microsoft PowerPoint Slide Show
Gruß,
gemini
Das drücken der Escape Taste per Batch ist nicht wirklich möglich. Wenn müßtest du mal schauen ob es Zusatztools gibt.
Was oben in VBS beschrieben wird würde auch in Batch gehen.
Zum einen würde das Powerpoint zangsbeendet werden:
Das in den Ruhe zustand versetzen würde denk ich nur in VBS oder zusatztools gehen.
miniversum
Was oben in VBS beschrieben wird würde auch in Batch gehen.
Zum einen würde das Powerpoint zangsbeendet werden:
taskkill /F /IM powerpnt.exe
Das in den Ruhe zustand versetzen würde denk ich nur in VBS oder zusatztools gehen.
miniversum
Hi,
mit Batch kann ich dir nicht dienen, Sorry.
Grundsätzlich gibt es noch die Möglichkeit einen Tastendruck an das aktive Fenster zu senden.
Die Methode ist SendKeys.
Das ist aber schon sehr Nahe daran, einen Arbeitslosen hinzusetzen der die Taste drückt 
Wenn du Powerpoint startest und danach mit STRG+ALT+ENTF den Taskmanager öffnest, findest du unter dem Reiter 'Prozesse' auch einen mit dem Namen 'POWERPNT.EXE'.
Das Script macht nichts anderes als ein Benutzer, der den Prozess markiert, auf 'Prozess beenden' klickt und die Sicherheitsabfrage mit Ja beanwortet > Powerpoint wird ohne weitere Nachfrage beendet.
Prinzipell kannst du den Rechner, sofern du eine Möglichkeit hast ihn ferngesteuert wieder hochzufahren, sogar ausschalten.
Beim Hochfahren/Anmelden wird per Task die Präsentation gestartet und nach/zu einer best. Zeit die Präsentation geschlossen und der Rechner in den Standby gefahren.
Ist natürlich jetzt ungetestet sollte aber schon so funktonieren.
Ich nehme an dass du, wenn du die Präsentation als PPS speicherst, das Gedingens mit SlideShow sparen kannst. Musst aber testen!
Zum Beenden:
Schönen Feiertag
gemini
mit Batch kann ich dir nicht dienen, Sorry.
Grundsätzlich gibt es noch die Möglichkeit einen Tastendruck an das aktive Fenster zu senden.
Die Methode ist SendKeys.
objShell.SendKeys "{ESC}"
Was meinst du mit Prozess terminieren? Was geschiet wenn ich einen Prozess terminiere?
Du beendest ihn!Wenn du Powerpoint startest und danach mit STRG+ALT+ENTF den Taskmanager öffnest, findest du unter dem Reiter 'Prozesse' auch einen mit dem Namen 'POWERPNT.EXE'.
Das Script macht nichts anderes als ein Benutzer, der den Prozess markiert, auf 'Prozess beenden' klickt und die Sicherheitsabfrage mit Ja beanwortet > Powerpoint wird ohne weitere Nachfrage beendet.
Prinzipell kannst du den Rechner, sofern du eine Möglichkeit hast ihn ferngesteuert wieder hochzufahren, sogar ausschalten.
Beim Hochfahren/Anmelden wird per Task die Präsentation gestartet und nach/zu einer best. Zeit die Präsentation geschlossen und der Rechner in den Standby gefahren.
Ist natürlich jetzt ungetestet sollte aber schon so funktonieren.
Ich nehme an dass du, wenn du die Präsentation als PPS speicherst, das Gedingens mit SlideShow sparen kannst. Musst aber testen!
'OpenDanielesPresentation.vbs
Set objPPT = CreateObject("PowerPoint.Application")
objPPT.Visible = True
Set objPresentation = objPPT.Presentations.Open("C:\Pfad\zu\Danieles.pps")
' CloseDanielesPresentation.vbs
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'POWERPNT.EXE'")
For Each objProcess in colProcessList
objProcess.Terminate()
Next
set WSHShell = CreateObject("WScript.Shell")
WSHShell.Run "%windir%\system32\rundll32.exe powrprof,SetSuspendState"
Schönen Feiertag
gemini