[Hilfe][VB.Net] Befehle aus .txt

  • Hallo liebe Godlikerz,

    Ich habe hier eine Konsolenanwendung.
    Ich möchte das die Anwendung die Commands.txt ausliest.
    Die Commands.txt soll so aufgebaut sein:

    c:\programme\adobe\photoshop\photoshop.exe
    photoshop

    c:\windows\editor.exe
    editor

    Also:

    Pfad
    Befehlname

    Pfad Befehlname

    Die Anwendung soll die Commands.txt so öffnen das er photoshop in ein Command umwandelt und somit den Pfad starten.

    Meine bisherigen Commands sind so aufgebaut:

    Code
    If Antwort = "clear" Then
    COMMAND
    TEXTZEILE
    End If

    Also z.b.

    Code
    If Antwort = "clear" Then
    Console.Clear()
    Console.WriteLine("Cleared.")
    End If

    Die neuen Command sollte dann etwa so aussehen:

    Code
    If Antwort = "photoshop" Then
    Shell("c:\programme\adobe\photoshop\photoshop.exe", vbNormalNoFocus)
    Console.WriteLine("Photoshop geöffnet.")
    End If
    Code
    If Antwort = "editor" Then
    Shell("c:\windows\editor.exe", vbNormalNoFocus)
    Console.WriteLine("Editor geöffnet.")
    End If

    Und so sollte man dann auch immer neue Commands hinzufügen können.

    Ich hoffe ihr könnt mir helfen. :)

    MfG
    Kaev

    [SIGPIC][/SIGPIC]

  • Du kannst es so versuchen:
    StreamReader deklarieren(System.IO wird als import benötigt)
    Einige Strings deklarieren(bei dir wärens dann 4)
    Jede Zeile in einen String laden lassen(also mit dem deklarierten StreamReader)
    und dann einfach als Pfad bei Shell den String mit dem gelesenen Pfad
    als:
    Shell(StringPfad)
    StringPfad muss nicht gleich sein ^-^
    und bei Console.WriteLine dann einfach in die Klammern:
    (ProgrammName + " ist geöffnet")
    ProgrammName und ist geöffnet muss nicht gleich sein ^-^
    Ich hoffe du weist was ich meine. Kann leider im Moment nicht ausführlicher sein, weil ich gleich weg muss.



  • Wenn ich dann ein neues Command hinzufügen will muss ich dann 2 neue Strings definieren und grade das soll NICHT.
    Die Benutzer sollen ja ohne meinen Sourcecode eigene Commands hinzufügen.
    Hoffe du verstehst mich.

    [SIGPIC][/SIGPIC]

  • Hmm... Verstehen tue ich dich jetzt. Sry da kann ich dir nicht helfen. Weiß es selber nicht. Ich hatte es gewusst aber hab ne Zeit nicht mehr mit VB geproggt(ca. ein Jahr) bzw. nicht mehr häufig geproggt. Evtl. die Auslesen wie viel Zeilen vorhanden sind... wäre dann nur der Anfang und dabei kann ich dir helfen:

    Code
    Dim Reader As New StreamReader("Test.txt")
    Dim Test as String
    Dim Zahl as Integer
    While (Test != "")
    Test = Reader.ReadLine()
    If Test != "" Then
    Zahl = Zahl + 1
    End If
    End While


    Kann es leider nicht testen bin grad mit der PsP in nem Internet Cafè(wie gesagt bin halt weg) Und leider gibts Visual Studio noch nicht für die PsP xD

    Naja hoffe es klappt...

    MFG
    xpr0keksx



  • Also ich würde dir vorschlagen, du machst solch eine ini :

    Code
    [COM]
    Count=2
    [COM1]
    Shell=C:\programme\adobe\photoshop\photoshop.exe
    Com=photoshop
    [COM2]
    Shell=C:\windows\editor.exe
    Com=editor

    Das wird alles in ein 2D Array gelesen
    Array-0,0 enthält die Anzahl der Commands

    Und dann ließt du in einer For-Schleife ( 1 zu Array -0,0 ) die werte durch
    in Array x,1 ist der Command ( zB."editor" )
    und in Array x,2 ist der Pfad zur Anwendung .

    Ich würde dir noch empfehlen, eine Funktion einzubauen mit welcher der User neue Commands hinzufügen kann.
    Dann musst du nur wieder die ini auslesen lassen, dann "Count" durch 1 erhöhen und dann eine neue Sektion anlegen "COMX" , "X" ist hierbei die ID, bzw die aktuelle anzahl der Commands.

  • Erstmal danke für eure antworten. :P

    *electriZer* könntest du mir evtl. ein Codebeispiel nennen? Ich bin nicht grad der beste auf dem Gebiet und würde da sonst ein paar Stunden lang dran verzweifeln :3 (Vorallem weil ich noch nie mit einer For-Schleife gearbeitet habe ._.)

    Danke schonmal :)
    MfG

    [SIGPIC][/SIGPIC]

  • Am einfachsten ist sowas mit einer *.ini datei.

    Zum verwalten von INIDateien... hier eine kleine Klasse... viel spaß damit^^

    lg H4ckHunt3r

  • Ne is noch nicht Geschichte, werde es ausprobieren sobald ich n neues Motherboard habe. -.-

    PS: Notfall-Laptop rules xD

    [SIGPIC][/SIGPIC]

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!