Passando parâmetros para uma aplicação .Net

Pessoal, seguindo com os posts sobre C# básico, vou mostrar como passar parâmetros para uma aplicação em .Net usando C# em um Windows Forms.

Primeiramente crie uma aplicação Windows Forms:

Eu estou usando o Visual Studio 2010 e o Framework 4, mas você pode usar qualquer versão do Visual Studio para executar este exemplo.

Após criar a aplicação vamos ao arquivo Program.cs, onde vamos colocar a variável que irá receber os parâmetros:

[STAThread]
static void Main(string[] parametros)
{
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    Application.Run(new frmPrincipal());
}

Neste exemplo eu criei uma variável chamada parametros que irá receber os argumentos da linha de comando. Se você precisa usar o parâmetro somente para acionar alguma parte do seu programa, pode fazer assim:

 static void Main(string[] parametros)
 {
    if(parametros.Length > 0)
    {
        if(parametros[0].ToUpper() == "/CONFIG")
        {
            frmConfig config = new frmConfig();
            config.ShowDialog();
            Application.Exit();
            return;
        }
    }
 }

Primeiro você testa se recebeu algum parâmetro e depois faz a verificação. Eu fiz a conversão para Upper() fica mais simples a verificação. Agora você pode estar se perguntando, como vou fazer debug da aplicação e passar o parâmetro ? Isto você pode configurar na janela de propriedades do projeto em Project/Properties/Debug:

Se você precisar testar mais de um parâmetro ao mesmo tempo, basta colocá-los separados por espaços, do mesmo modo que faria no prompt de comandos. Agora para finalizar, vou mostrar como passar o parâmetro para o form principal da aplicação. Para isto teremos que modificar o construtor do form, veja:

public partial class frmPrincipal : Form
{
    public frmPrincipal(string[] parametros)
    {
        InitializeComponent();
    }
}

Na verdade acrescentamos o parâmetro no construtor do form, mas se você precisar passar qualquer outra informação, basta modificar o construtor. Agora vamos voltar no program.cs e passar o parâmetro:

Application.Run(new frmPrincipal(parametros));

É isto aí pessoal, um abraço e até a próxima.