cmdline? mit befehlen für batch arbeiten

  • hi,

    ich würde mal gerne einen befehl für die cmd.exe programmieren.

    als beispiel nenne ich jetzt einfach mal die xcopy.exe von windoof
    hier kann man mit den parametern /a /m /p /s usw arbeiten

    wie kann ich das mit autoit umsetzen?

  • [autoit]


    #include <Process.au3>
    _RunDOS("Command")

    [/autoit]

    Padmak

    Edit:
    Gib mal in ner leeren .au3 datei cmdlineswitch ein und drück leertaste

    Einmal editiert, zuletzt von Padmak (23. Januar 2009 um 16:13)

    • Offizieller Beitrag

    Die Process.au3 braucht man nicht umbedingt dafür . Is nur ein Include mehr.

    [autoit]

    RunWait(@ComSpec & " /C " & "Command", "", @SW_HIDE)

    [/autoit]


    Nichts anderes wird auch bei _RunDos gemacht .Und das ganze muß man noch nicht mal schreiben , einfach cmd und Leerzeichen in Scite und es kann losgehen .

  • [autoit]

    If $CmdLine[0] <> "" Then
    If $CmdLine[1] = "config" Then _config()
    Else
    _start()
    EndIf

    [/autoit]

    Achtung Anfänger! :whistling:

    Betrachten des Quellcodes auf eigene Gefahr, bei Übelkeit,Erbrechen,Kopfschmerzen übernehme ich keine Haftung. 8o

  • hab ihm jez schon über icq geholfen ich glaub er hats soweit

    Raupi
    ich hab ihm absichtlich _RunDos gesagt weil des n bisschen einfacher ist
    den rest hab ich ihm schon erklärt
    und er will sowieso ne kommandozeilenanwendung^^

    Padmak

  • Hier ein richtiges CMD Beispiel, wie z.B. der LAME Encoder oder xcopy:

    [autoit]

    #AutoIt3Wrapper_UseUpx=n
    #AutoIt3Wrapper_Change2CUI=y
    #AutoIt3Wrapper_Run_After=upx.exe --best --compress-resources=1 "%out%"

    [/autoit][autoit][/autoit][autoit]

    If $CmdLine[0] = 0 Then
    ConsoleWrite(@CRLF & "Keine Parameter angegeben! Commandline /? fuer mehr Info" & @CRLF & @CRLF)
    Exit
    EndIf
    $p = 0
    For $x = 1 To $CmdLine[0]
    If StringLower($CmdLine[$x]) = StringLower("-?") Or _
    StringLower($CmdLine[$x]) = StringLower("/?") Or _
    StringLower($CmdLine[$x]) = StringLower("-h") Or _
    StringLower($CmdLine[$x]) = StringLower("/h") Then
    ConsoleWrite(@CRLF & "Commandline.exe ist ein CMD Tool geschrieben mit AutoIt" & @CRLF & @CRLF & _
    @TAB & "Commandline.exe -h gibt diese Info wieder" & @CRLF & _
    @TAB & "Commandline.exe -e gibt die eulersche Zahl zurueck" & @CRLF & _
    @TAB & "Commandline.exe -p gibt PI zurueck" & @CRLF & @CRLF)
    Exit
    EndIf
    If StringLower($CmdLine[$x]) = StringLower("-p") Then
    ConsoleWrite(@CRLF & "Pi lautet: 3,14..."& @CRLF & @CRLF)
    EndIf
    If StringLower($CmdLine[$x]) = StringLower("-e") Then
    ConsoleWrite(@CRLF & "e lautet: 2,71..."& @CRLF & @CRLF)
    EndIf
    Next
    Exit

    [/autoit]

    Voraussetzung ist, dass der AutoIt3Wrapper installiert ist, da es ansonsten nicht funkioniert!

    Einfach kompilieren und in der CMD Box Commandline.exe eingeben oder wie immer das Programm dann heißt.

    Gruß,
    UEZ

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

  • Jam00
    es ist hier im Forum schon tausende male besprochen worden :D
    einfach mal cmdlineswitch und leertaste eingeben und dann anpassen
    deshalb hab ich es hier nicht erklärt
    benutz einfach mal die suche^^

    Padmak