Como ler parâmetros enviados da linha de comando no VB .NET

Uma coisa muito interessante que uma aplicação pode fazer, é mudar o seu comportamento de acordo com os parâmetro passados a ela, quando executada. E é exatamente isso que veremos nesse post, como ler os parâmetros passados para aplicação da linha de comando.

Os parâmetros

Antes de vermos como se faz, vamos dar uma olhada no que são os parâmetros.

Quando você executa o comando shutdown (para desligar o computador) no prompt de comando, é necessário informar que tipo de comportamento ele deve ter, por exemplo, passando o parâmetro “-r” você indica que o computador deve ser reiniciado. O mesmo pode ser feito com uma aplicação desenvolvida por você

Chamando parâmetro no Prompt de comando

Chamando parâmetro no Prompt de comando

Como ler parâmetros enviados da linha de comando

O código para ler parâmetros enviados da linha de comando no Visual Basic .NET é o seguinte:

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim parametros() As String
        parametros = Environment.GetCommandLineArgs
        If parametros.Length > 1 Then
            For Each par In parametros
                If par = "XXX" Then
                    ' Executa alguma ação
                End If
            Next
        Else
            'Não foi passado parâmetro para a aplicação.
        End If
    End Sub

Perceba que coloquei o código dentro do procedimento de inicialização do primeiro formulário da aplicação.

Vamos linha a linha entender o que será executado.

Linha 2: declaro a variável que receberá os parâmetros;

Linha 3: executo a função GetCommandLineArgs que está dentro da classe Environment, para passar à variável parametros, o que foi passado para a aplicação;

Linha 4: verifico se a variável parametros recebeu mais de um parâmetro. Isso porque, quando a aplicação é executada, como primeiro parâmetro, é passado o próprio caminho do executável.

Linha 5: tendo a aplicação recebido mais de um parâmetro, um for each é criado para passar por todos os itens da variável parametros.

Linha 6: verifico se um parâmetro chamado “XX” foi passado. Nesse ponto, dentro do for each, você deve fazer as verificações para o que sua aplicação está preparada para tratar.

Uma coisa importante que quero ressaltar, é que o que você verificará no IF, deve ser exatamente o que for passado para a aplicação, por exemplo, no caso do shutdown, deve ser verifica se a aplicação recebeu o parâmetro “-r” e não somente “r”.

Galera, por hoje é só. Até a  próxima!