Hilfe mit WinRar oder WInzipp

  • Hallo erstmal, da das hier mein erster Post ist :)

    Habe vor kurzem dieses wunderbare Tool entdeckt welchem dieses Forum gewidmet ist ;)
    Ein erstes kleines Project ist schon realisiert ( AUdioausgang automatisch umschalten von onboard auf soundkarte, klappt!).
    Jetzt begann ich mit dem nächsten und hänge nun irgendwie fest.
    Ich habe eine Gui erstellt mit ein paar Schaltern und Comboboxen.
    Aus den verschiedenen Sachen erstelle ich einen Pfad automatisch und will eine Datei auf dem Pfad automatisch zippen/raren :D (mir egal) und noch vllt. umbenennen danach.
    Ich fand dann hier sowas: http://www.autoitscript.com/forum/index.…&hl=unzip+files komme aber leider nicht dahinter, was ich da tun soll.
    Ich habe gehört das man WinRar über CommandLine ansteuern kann, hat da jemand ne Idee, oder sogar eine Anleitung ??? (oder ne Erklärung wie das in dem Link da gehnsoll)

    Danke für Eure Hilfe !!!

  • Bitte helft mir bei der Sache doch, irgendjemand muss das doch schon realisiert haben!!!

  • So, das zippen habe ich hinbekommen hiermit:

    [autoit]

    $Archiv = "c:\neuertest.zip" ; Name des Archives

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

    $File = "c:\test.txt" ; Datei die ins Archiv soll
    ; Archiv erstellen und Datei reinpacken
    If _ZipCreate($Archiv) Then _ZipAdd($Archiv,$File)

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

    ;===============================================================================
    Func _ZipAdd($zipFile,$addFile)
    Local $oShell, $oDir

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

    $oShell = ObjCreate("Shell.Application")

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

    if IsObj($oShell) Then
    $oDir = $oShell.NameSpace($zipFile)
    $oDir.CopyHere ($addFile)
    sleep (500)
    Return 1
    EndIf

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

    Return 0
    EndFunc

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

    ;===============================================================================
    Func _ZipCreate($zipFile)
    Local $i, $sHeader, $file, $err

    $sHeader = "PK" & Chr(5) & Chr(6)
    For $i =0 to 17
    $sHeader &= Chr(0)
    Next

    $file = FileOpen($zipFile,2)
    $err = FileWrite($file,StringToBinary($sHeader))
    FileClose($file)

    Return $err
    EndFunc

    [/autoit]


    nur unzippen da bekomm ich das noch net ganz hin (bzw. hab keinen ansatz :))

  • Hi,

    hmmm wollte eigentlich nicht so eine exe DAtei erstellen. Die Zip habe ich bereits.

    kann mir jemand Sagen wir ich die Commandozeile von 7zip korrekt ansteuere ?

  • Wenn du 7Zip installiert hast, steht alles weitere über cmdline parameter in der beiliegenden Hilfe
    Diese ist versändlich geschrieben und man kann damit wunderbar arbeiten, und ja man kann auch selbstextrahierende Archive machen die du wiederrum per cmdline parameter steuern kannst.

    Dieses Prinzip benutze ich für meine größeren Projekte damit ich nich so viele Files includen muss ;)

    Die Kommandozeile ansteuern????

    Naja du meinst vermutlich das hier:

    [autoit]

    Run("C:\Programme\7zip\7gz.exe -a -x9 -p C:\test\test.7z")

    [/autoit]

    Ich weiss jetzt nicht mehr ob die Parameter stimmen, ist ausm kopf raus aber wie gesagt in der Hilfe steht alles ;)

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D

  • [autoit]

    Run("c:\Programme\7-zip\7z.exe x c:\test.zip")

    [/autoit]

    Normal müsste doch jetzt das Archiv "test.zip" einfach nach c:\ extrahiert werden oder?
    Es kommt auch eine Meldung, dass die Datei bereits existiert, dann sage ich im cmd "y" für überschreiben, doch da ist danach keine DAtei, und vorher war auch keine da.....
    Habe ich irgend einen parameter vergessen ???

    • Offizieller Beitrag

    Welche Variable ? Gib mal ein Beispiel .

  • [autoit]

    $Pfad = 'c:\test'
    Run("c:\Programme\7-zip\7z.exe x c:\test.zip -o" & $Pfad)

    [/autoit]


    (ungetestet)