Argumenty wiersza poleceń

0

Mam problem z obsługą argumentów wiersza poleceń mianowicie nie wiem czemu program działa inaczej od moich założeń :D
Kod:

 using System;

namespace TestApp
{
    class App
    {
        static int Main()
        {
            string[] TheArgs = System.Environment.GetCommandLineArgs();
            foreach (string args in TheArgs)
            {
                if (args == "-godmode")
                {
                    Console.WriteLine("Ty j*bany oszuscie!");
                    
                }
                else if (args == "-hp")
                {
                    Console.WriteLine("Okej życie dostaniesz...");
                    
                }
                else if (args == "-spierdalaj")
                {
                    Console.WriteLine("Sam spi*rdalaj!");
                    
                }
                else
                {
                    Console.WriteLine("0_o!");
                    
                }
            }
            return 0;
        }
    }
}

Jak ja to widzę - Podajemy argumenty bez ograniczeń i jedzie od zerowego elementu tablicy jeżeli będzie jak w ifie to wywala odpowiedni komunikat jeśli takiego nie ma to wywala "0_o!".
Niby banalne ale coś mi tu nie gra.

Mianowicie gdy wpisuje w cmd: App.exe to wywala "0_o!" a przecież nie podałem argumentów... A gdy podam kilka np.
App.exe -godmode -hp -buca -sfsfsd to najpierw wywala blok else(dlaczego?) a dalej już dobre blok -godmode -hp i 2x else.

W opcjach projektu VS c# 2010 express w zakładce debug i command line arguments dodałem odpowiednie.

0

"The first element in the array contains the file name of the executing program."
http://msdn.microsoft.com/en-us/library/system.environment.getcommandlineargs.aspx

1 użytkowników online, w tym zalogowanych: 0, gości: 1