Windows Presentation Foundation
09.01.2018, 10:35 Uhr
09.01.2018, 10:35 Uhr
Parameter an ein laufendes Programm übergeben
Von Haus aus ist die Windows Presentation Foundation (WPF) nicht darauf ausgerichtet, Parameter an ein laufendes Programm zu übergeben. Alex Schunk zeigt eine einfache Möglichkeit dafür.
Was Alex Schunk mit seiner Lösung erreicht, erklärt er am Beispiel Photoshop: Angenommen das Bildbearbeitungsprogramm läuft bereits und Sie führen einen Doppelklick auf eine andere, nicht bereits geladene PSD-Datei aus, dann lädt Potoshop diese Datei in das bereits laufende Programm. Ein derartiges Verhalten sollte auch für WPF-Anwendungen erreicht werden.
Dafür -- so Schunk -- gibt es im Web etliche Ansätze, die ihm allerdings zum Teil haarsträubend vorkamen Deshalb hat er sein eigenes Verfahren gefunden, das ähnlich wie eine bei ihm bereits vorhandene Lösung für Windows Forms arbeitet.
Um die Lösung nicht zu kompliziert zu gestalten, geht er zunächst von einer Single-Instance-Anwendung aus. Wird diese gestartet, muss sie checken, ob bereits eine andere Instanz der Anwendung läuft. Ist das nicht der Fall, erfolgt der Start ganz normal. Existiert bereits eine Instanz, so erhält die erste Instanz die beim Start übergebenen Parameter von der zustätzlich gestarteten App. Nach der Übergabe der Parameter wird die zweite Instanz beendet.
Alle weiteren Details, inklusive Sourcen und Beispielprogramm finden Sie im Beitrag von Alex Schunk auf CodePlex.
Dafür -- so Schunk -- gibt es im Web etliche Ansätze, die ihm allerdings zum Teil haarsträubend vorkamen Deshalb hat er sein eigenes Verfahren gefunden, das ähnlich wie eine bei ihm bereits vorhandene Lösung für Windows Forms arbeitet.
Um die Lösung nicht zu kompliziert zu gestalten, geht er zunächst von einer Single-Instance-Anwendung aus. Wird diese gestartet, muss sie checken, ob bereits eine andere Instanz der Anwendung läuft. Ist das nicht der Fall, erfolgt der Start ganz normal. Existiert bereits eine Instanz, so erhält die erste Instanz die beim Start übergebenen Parameter von der zustätzlich gestarteten App. Nach der Übergabe der Parameter wird die zweite Instanz beendet.
Alle weiteren Details, inklusive Sourcen und Beispielprogramm finden Sie im Beitrag von Alex Schunk auf CodePlex.