Avatar billede bigbird Nybegynder
07. december 2006 - 17:28 Der er 4 kommentarer og
1 løsning

Få variabler ind, via attributer når programmet kaldes

Jeg har fået et lille console program til at virke, men det kunne være rart, hvis man kunne definere nogle variabler når jeg kalder programmet..

Altså således
programnavn.exe /a:172.16.1.6 /b:mail@domain.com /c:24

Også i programmet have en funktion der først testede og det indtastede var gyldige ting, og derefter gjorde at jeg kunne bruge dem i selv programmet...

Men har ikke tidligere trukket variabler ind på denne måde..

Hvordan gøres det ? :)
Avatar billede mh6000 Nybegynder
08. december 2006 - 07:32 #1
Her er det: my.exe /user:me /password:LetMeInn


      Dim username As String = ""
      Dim password As String = ""
      For Each arg As String In Environment.GetCommandLineArgs()
        If arg.StartsWith("/user:") Or arg.StartsWith("/User:") Then
          username = arg.Substring(6)
        End If
        If arg.StartsWith("/password:") Or arg.StartsWith("/Password:") Then
          password = arg.Substring(10)
        End If
      Next
Avatar billede bigbird Nybegynder
08. december 2006 - 09:09 #2
Hmm.. Kan du konvertere det til C#. Glemte jeg at skrive. Sorry :)
Avatar billede mh6000 Nybegynder
08. december 2006 - 09:20 #3
Prøv med dette:

        [STAThread]
        static void Main(string[] args)
        {

      string password="";
      string user="";

      foreach(string s  in Environment.GetCommandLineArgs)
      {
        if (s.ToUpper.StartsWith("/USER:"))
        {
        user=s.Substring(6) ;       
        }
        if (s.ToUpper.StartsWith("/PASSWORD:"))
        {
        password=s.Substring(10);               
        }
      }
 
    // Eller   
   
      foreach(string s  in args)
      {
        if (s.ToUpper.StartsWith("/USER:"))
        {
          user=s.Substring(6) ;       
        }
        if (s.ToUpper.StartsWith("/PASSWORD:"))
        {
          password=s.Substring(10);               
        }
      }

   
    }
Avatar billede bigbird Nybegynder
08. december 2006 - 11:07 #4
Hmm.. Jeg får ikke lov at benytte .StartsWith :( Mon den er udeladt i .Net 2.0 ?
s.ToUpper (For at få det i uppercase) virker nemlig fint...
Avatar billede bigbird Nybegynder
02. januar 2007 - 10:41 #5
<--
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester