Feedback

VB - Programm mit eigenen Parametern

Veröffentlicht von am 20.11.2007
(2 Bewertungen)
Hier ein paar Zeilen, wie man an ein eigenes Programm Parameter übergeben kann.
Man kann sie von ÜBERALL aus dem Programm aufrufen (habe zumindest noch keinen Weg gefunden, das zum absturz zu bringen ;).

Programm starten:
"D:\meine Snippets.exe" time
"D:\meine Snippets.exe" time info
"D:\meine Snippets.exe" "time info"

Jede leertaste zwischen den parametern erzeugt einen weiteren Array eintrag.
So würde der 3. Aufruf 2 einträge erzeugen und in die Case Else laufen.
GFU-Schulungen  [Anzeige]

C# Aufbaukurs

Sie haben grundlegende .NET- und C#-Kenntnisse und und wollen diese nun erweitern. Der Aufbaukurs C# führt Sie ein die Arbeit mit Interfaces und Delegates, Generics und Parallel Computing.

ASP.NET Core und Angular Komplett für .NET-Entwickler

Sie  lernen in drei (3) Tagen wie man mit  ASP.NET Core und den Technologien  MVC, Entity Framework, WebAPI und  Razor professionelle sowie moderne  Web-Anwendungsarchitekturen aufbaut.  Die Schulung ist der perfekte  Einstieg um insbesondere datengetriebene  und präsentationsorientierte  Applikationen auf Basis der robusten und  skalierbaren ASP.NET Core  Plattform zu erstellen. Nach der Veranstaltung kennen Sie die Konzepte von Angular und können Angular in neue und bestehende ASP.NET-Anwendungen einsetzen.

    '------- Aufruf im Programm: -------
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ExecuteParams()
    End Sub

    '------- Haupt-Sub -------
    Public Sub ExecuteParams()
        Dim args As String()
        args = Environment.GetCommandLineArgs()

        'bei 1 starten, weil das Programm IMMER seinen eigenen 
        'FULLPATH als ersten Parameter erkennt!
        For i As Integer = 1 To args.Length - 1
            Select Case args(i).ToLower
                Case "?", "help", "info"
                    MessageBox.Show(My.Computer.Name, "? / help / info")

                Case "time"
                    MessageBox.Show(Now, "Time", MessageBoxButtons.OK, MessageBoxIcon.Information)

                Case "invis"
                    Me.Visible = False
                    Me.ShowInTaskbar = False

                Case Else
                    MessageBox.Show("Unbekannter Parameter:" & vbCrLf & args(i), "Unbekannt!", MessageBoxButtons.OK, MessageBoxIcon.Information)
            End Select
        Next
    End Sub

1 Kommentare zum Snippet

Timo Schülter schrieb am 08.12.2011:
Hallo General Bison,
es gibt noch eine andere möglichkeit die ganu so Funktioniert (Easy Mode)


Private Shared Function ReadProcessArguments(ByVal Argument As String)

Dim args As String()
args = Environment.GetCommandLineArgs()
If args.Contains(Argument) Then Return True
Return False

End Function
 

Logge dich ein, um hier zu kommentieren!