Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 2 Min.

WPF/VB: Übergabeparameter entgegennehmen

Wie WPF-Anwendungen beim Programmstart übergebene Parameter entgegennehmen können.
Insbesondere wenn man ein Programm von einer anderen Anwendung starten lässt (vergleiche Tipp der vergangenen Woche), ist es interessant, beim Start gleich einen oder mehrere Parameter zu übergeben. Die Frage ist nur, wie die gestartete WPF-Anwendung auf die übergebenen Daten zugreifen kann. Dafür gibt es einige, mehr oder weniger komplizierte Optionen. Die einfachste davon ist es, die Argumente mit dem Befehl Environment.GetCommandLineArgs() auszulesen, den man beispielsweise im Eventhandler MainWindow_Loaded patziert:
...
  Dim args(5) As String
  Try
    args = Environment.GetCommandLineArgs()
    ' Das erste Argument (0) ist der Pfad zur EXE-Datei.
    ' Das zweite Argument (1) ist das erste übergebene Argument.
    ' In diesem Beispiel ist es ein Dateiname inklusive Pfad.
    If args.Length > 0 Then
      StartupFile = args(1)
    End If
  Catch

  End Try
... 
Der Befehl Environment.GetCommandLineArgs() liefert ein String-Array, dessen erster Eintrag der Pfad zur EXE-Datei ist und ab dem zweiten Eintrag folgen die übergebenen Argumente. Und GetCommandLineArgs funktioniert auch dann, wenn die Argumente gar nicht über die Kommandozeile übergeben worden sind, sondern von einer anderen WPF-Anwendung via Process.Start(pfad, args) beziehungsweise Process.Start(New ProcessStartInfo(startProg, pfad, args)) – siehe hier.

Neueste Beiträge

Deep Learning mit Python - Python und AI, Teil 3
In der heutigen KI-Entwicklung spielen Deep-Learning-Frameworks eine zentrale Rolle. Ein Vergleich der beiden populärsten Bibliotheken TensorFlow und PyTorch.
10 Minuten
Chunks mit Köpfchen - KI für KMU, Teil 1
Wie trenne ich Textinformationen in sinnvolle Segmente?
7 Minuten
Hierarchische Testdata-Builder - Testdata-Builder, Teil 1
Lesbare Tests bei tiefen Objekthierarchien mit dem Collection-Builder-Pattern.
4 Minuten
Miscellaneous

Das könnte Dich auch interessieren

Benchmark im Unit-Test-Stil - Best of NuGet, Teil 4
NuGet-Pakete können das Leben des .NET-Entwicklers sogar um neue Werkzeuge erweitern, die sich auf den Entwicklungsworkflow (und nicht den bearbeiteten Code) auswirken. Mit BenchmarkDotNet steht ein Musterbeispiel dieses Konzepts zur Verfügung, das die Überprüfung der Performance von Code aller Arten ermöglicht.
7 Minuten
16. Okt 2025
Attraktives GUI mit Spectre.Console - Best of NuGet, Teil 6
Mit der Bibliotheksfamilie Spectre.Console steht ein neues Produkt ante portas, das die Realisierung von visuell ansprechenden Kommandozeileninterfaces zu erleichtern sucht.
7 Minuten
29. Okt 2025
Loggingdaten-Einlaufstelle mit Komfortfunktionen - Best of NuGet, Teil 5
Die in Android implementierte Logging-Funktion ist ein leistungsfähiges Beispiel für moderne Logging-Systeme. Mit Serilog steht ein ähnliches System für .NET-Applikationen zur Verfügung, das allerdings einige weit über das große Vorbild hinausgehende Funktionen offeriert.
6 Minuten
22. Okt 2025
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige