pluwim
Goto Top

Wie kann man ein Programm automatisch nach Beendigung von Outlook starten lassen?

Hallo zusammen,

weil ich meine pst-Datei regelmäßig kopieren will, suche ich nach einer Lösung, um nach dem Beenden von Outlook 2010 ein Batchscript unter Win 7 Pro automatisch starten zu lassen.

Eine Lösung wäre, Outlook selbst per Batch zu starten und das andere Script im Anschluss im selben Batch, doch damit wäre Outlook nicht mehr als Programm in der Taskleiste startbar/anklickbar. Das fällt also leider flach.

Gibt es irgendwelche Beenden-Events von Outlook, die man in der Aufgabenplanung als Trigger verwenden kann? Das würde das Problem schon lösen. Ich fand dazu nur leider nichts. Vielen Dank für einen Tipp.

Content-ID: 302285

Url: https://administrator.de/contentid/302285

Ausgedruckt am: 26.11.2024 um 07:11 Uhr

116301
116301 20.04.2016 um 00:10:18 Uhr
Goto Top
Hallo Pluwim!

Mit einem VB-Script ( *.vbs) z.B. so:
'Outlook starten und warten bis es geschlossen wurde  
CreateObject("WScript.Shell").Run "Outlook.exe", 1, True	  
	
'Anschließend Datei kopieren  
With CreateObject("Scripting.FileSystemObject")  
     'Syntax: Quellpfad, Zielpfad, überschreiben True/False  
    .CopyFile "C:\Ordner\Test.txt", "D:\Ordner\", True     
End With

Gruß Dieter
emeriks
emeriks 20.04.2016 um 08:57:32 Uhr
Goto Top
Hi,
wo ist denn die PST gespeichert? Möglicherweise wäre es eine Option, das betreffende Laufwerk via VSS zu "schnappschussen", den Snapshot zu mounten und aus diesem heraus die PST zu kopieren. Das könntest Du einfach zeitgesteuert laufen lassen und wäre unabhängig davon, ob Outlook gerade läuft oder nicht.

E.
Pluwim
Pluwim 20.04.2016 um 09:13:47 Uhr
Goto Top
Danke, das klingt aber kompliziert, kann man das per Batch machen?
emeriks
emeriks 20.04.2016 um 11:29:23 Uhr
Goto Top
Ja, z.B. hier beschrieben:
how to copy an opened file
Pluwim
Pluwim 20.04.2016 um 11:41:44 Uhr
Goto Top
Danke. Noch eine Frage: Welcher Stand wird dabei kopiert? Der vor dem Öffnen der pst-Datei oder der zum Zeitpunkt, wenn VSS eingeschaltet wird? Ich kenn mich damit nicht aus.
114757
114757 20.04.2016 aktualisiert um 11:50:59 Uhr
Goto Top
Moin.
Zitat von @Pluwim:
Danke. Noch eine Frage: Welcher Stand wird dabei kopiert? Der vor dem Öffnen der pst-Datei oder der zum Zeitpunkt, wenn VSS eingeschaltet wird? Ich kenn mich damit nicht aus.
Der Stand an dem der Snapshot erstellt wird.

Wird eine Schattenkopie erstellt, und es finden nachfolgende Schreiboperationen statt, wird eine Kopie der Datei in einen separaten Bereich umgeleitet damit Backup-Programme den Ursprungszustand zum Snapshotzeitpunkt erfassen können.

Gruß jodel32
Pluwim
Pluwim 20.04.2016 um 11:54:50 Uhr
Goto Top
Super, Danke.
Pluwim
Pluwim 20.04.2016 um 16:10:20 Uhr
Goto Top
Habe mir das mal angeschaut: Da muss man leider wieder was zusätzliches installieren. Mein System ist aber ganz neu und sauber, da will ich nicht gleich wieder mit allem Möglichen rumwursteln, obwohl ich es anschließend doch nicht so mache und das dann nicht mehr sauber wegbekomm.

Gibt es nicht doch eine Lösung, wie man erkennen kann, ob ein bestimmtes Programm (Outlook in diesem Fall) beendet wurde?

Vielen Dank.
114757
114757 20.04.2016 aktualisiert um 16:18:03 Uhr
Goto Top
Outlook hat VBA, dort hast du ein Shutdown-Event das beim Beenden von Outlook triggert, von da aus kannst du von mir aus dein Backup anwerfen... oder du überwachst den Outlook Prozess mit Powershell und reagierst dann auf das Beenden von Outlook ... och da gibt es so viele Möglichkeiten face-wink

BTW. Windows kann selbst auch Schattenkopien anfertigen.. vssadmin is your friend face-smile
Pluwim
Pluwim 20.04.2016 um 16:21:20 Uhr
Goto Top
Dieter, Deine Lösung funktioniert zwar, ich hatte sie auch schon zuvor als bat ausprobiert.

Das Problem ist aber, dass ich das Script nicht mit dem normalen Outlook-Shortcut in der Taskleiste starten kann, sondern einen extra Button dafür bräuchte. Ich könnte mir zwar einen basteln, der wie Outlook aussieht, hätte dann aber nach dem Start von Outlook 2 Outlook-Shortcuts in der Taskleiste, einmal aktiv und einmal das Script. Genau das will ich irgendwie vermeiden.
114757
Lösung 114757 20.04.2016 aktualisiert um 16:37:53 Uhr
Goto Top
Wie ich geschrieben habe hat Outlook ein Event das beim beenden getriggert wird, von da aus kannst du starten was du willst. (nicht vergessen eine kleine Pause (timeout /t 5) oder eine Prozessabfrage in dein Skript einzubauen)
Private Sub Application_Quit()
    Set objShell = CreateObject("Wscript.Shell")  
    objShell.Run "cmd /c ""C:\deinbackupscript.cmd""",0,False  
End Sub
Pluwim
Pluwim 20.04.2016 aktualisiert um 17:04:46 Uhr
Goto Top
Cool, so funktioniert es. Habe mir noch eine JA/NEIN Abfrage eingebaut. Vielen Dank.
114757
114757 20.04.2016 aktualisiert um 17:20:30 Uhr
Goto Top
Schön face-smile
Wenns das dann war, fehlt nur noch ein gelöst.