DirMove /DirRemove probleme

  • Tag, ich nehme mal an, dieser Thread könnte für die, die chromium (opensource version von chrome) haben besser nachfolgogen werden...

    Ich habe mal Chromatic gefunden, ein Programm das Chromium immer aktuell hält (Es gibt täglich ca. 2 updates von goole) Das Programm ist inoffiziel, nutzt aber die offiziele Google seite...

    Da es Chromatic meines Wissens nach nur für Mac gibt dachte ich mir, das ich einfach selber mach... Es läuft auch, aber irgendwie will er weder die Temporären Dateien per DirRemove löschen (DirRemove gibt 0 zurück) noch die Dateien vorher in den chromium Programmordner kopieren... (Chromium ist dabei natürlich aus) Hat jmd. ne Ahnung warum?

    Hier ist der QT:

    Spoiler anzeigen
    [autoit]

    #include <INEt.au3>
    #include <File.au3>
    #include <filelist.au3>
    #include <Array.au3>
    #RequireAdmin
    $archive = 1
    $chromepath = "C:\Users\" & @UserName & "\AppData\Local\Chromium\Application"
    $tmpLst = _FileListToArray ("C:\Users\Keno\AppData\Local\Chromium\Application")
    $localVersion = $tmpLst[1]
    $LATEST = _INetGetSource ("http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/LATEST")
    If Not FileExists (@ScriptDir & "\Archive\" & $LATEST & ".zip") Then
    If MsgBox (4, "New version", "A new version of Chromium is avalaible (" & $LATEST & ")! Download it?") == 6 Then
    InetGet("http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/" & $LATEST & "/chrome-win32.zip", @ScriptDir & "\" & $LATEST & ".zip", 0, 1)
    $total = InetGetSize ("http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/" & $LATEST & "/chrome-win32.zip")
    $1Percent = $total / 100
    While @InetGetActive
    $ProgressPercent = StringLeft (@InetgetBytesRead / $1Percent, 2)
    If StringInStr ($ProgressPercent, ".") Then $ProgressPercent = StringLeft ($ProgressPercent, 1)
    TrayTip("Downloading...", $ProgressPercent & "%" & " Version: " & $LATEST, 10, 16)
    Sleep(250)
    Wend
    ShellExecute (@ScriptDir & "\7z.exe", "x " & $LATEST & ".zip", @ScriptDir)
    Do
    Sleep (250)
    Until FileExists (@ScriptDir & "\chrome-win32\resources\inspector\Images\whiteConnectorPoint.png")
    MsgBox (0, "", DirMove (@ScriptDir & "\chrome-win32", $chromepath))
    MsgBox (0, "", DirRemove (@ScriptDir & "\chrome-win32\"))
    If $archive Then
    If Not FileExists (@ScriptDir & "\Archive") Then DirCreate (@ScriptDir & "\Archive")
    FileMove (@ScriptDir & "\" & $LATEST & ".zip", @ScriptDir & "\Archive\" & $LATEST & ".zip")
    EndIf
    FileWriteLine (@ScriptDir & "\History.txt", $LATEST)
    EndIf
    EndIf

    [/autoit]


    (DirMove sagt auch 0)

    Danke, Das Schwert

    Theorie ist wenn man weiß wie's geht, aber nichts klappt.
    Praxis ist wenn's klappt aber man weiß nicht weiso.

    Bei Microsoft sind Theorie und Praxis vereint: Nichts klappt und keiner weiß wieso ;)

    Einmal editiert, zuletzt von Das Schwert (22. Februar 2010 um 15:33)

  • Pfad muss leer sein??

    Dann ists klar... Und wie ist das bei DirMove?
    Auf den Desktop oderso hattes bis jetzt immer gekjlappt...

    EDIT: Nach einem Versuch, vor dem Löschen des Ordners alle Inhalte zu löschen wird jetzt Scheinbar sogar ein Teil des Programms fehlermeldungslos abgeschnitten...
    (Es kommt nurnoch eine von 2 MsgBoxen...)

    Hier ist der neue QT:

    Spoiler anzeigen
    [autoit]

    #include <INEt.au3>
    #include <File.au3>
    #include <filelist.au3>
    #include <Array.au3>
    #RequireAdmin
    $archive = 1
    $chromepath = "C:\Users\" & @UserName & "\AppData\Local\Chromium\Application"
    $tmpLst = _FileListToArray ("C:\Users\Keno\AppData\Local\Chromium\Application")
    $localVersion = $tmpLst[1]
    $LATEST = _INetGetSource ("http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/LATEST")
    If Not FileExists (@ScriptDir & "\Archive\" & $LATEST & ".zip") Then
    If MsgBox (4, "New version", "A new version of Chromium is avalaible (" & $LATEST & ")! Download it?") == 6 Then
    InetGet("http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/" & $LATEST & "/chrome-win32.zip", @ScriptDir & "\" & $LATEST & ".zip", 0, 1)
    $total = InetGetSize ("http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/" & $LATEST & "/chrome-win32.zip")
    $1Percent = $total / 100
    While @InetGetActive
    $ProgressPercent = StringLeft (@InetgetBytesRead / $1Percent, 2)
    If StringInStr ($ProgressPercent, ".") Then $ProgressPercent = StringLeft ($ProgressPercent, 1)
    TrayTip("Downloading...", $ProgressPercent & "%" & " Version: " & $LATEST, 10, 16)
    Sleep(250)
    Wend
    ShellExecute (@ScriptDir & "\7z.exe", "x " & $LATEST & ".zip", @ScriptDir)
    Do
    Sleep (250)
    Until FileExists (@ScriptDir & "\chrome-win32\resources\inspector\Images\whiteConnectorPoint.png")
    MsgBox (0, "", DirMove (@ScriptDir & "\chrome-win32", $chromepath))
    $lst = _RecursiveFileListToArray (@ScriptDir & "\chrome-win32", "", 1)
    $i = 1
    Do
    FileDelete ($lst[$i])
    $i += 1
    Until $i -1 = $lst[0]
    $lst = _RecursiveFileListToArray (@ScriptDir & "\chrome-wine32", "", 0)
    $i = 1
    Do
    DirRemove ($lst[$i])
    $i += 1
    Until $i -1 = $lst[0]
    MsgBox (0, "", DirRemove (@ScriptDir & "\chrome-win32\"))
    If $archive Then
    If Not FileExists (@ScriptDir & "\Archive") Then DirCreate (@ScriptDir & "\Archive")
    FileMove (@ScriptDir & "\" & $LATEST & ".zip", @ScriptDir & "\Archive\" & $LATEST & ".zip")
    EndIf
    FileWriteLine (@ScriptDir & "\History.txt", $LATEST)
    EndIf
    EndIf

    [/autoit]

    Theorie ist wenn man weiß wie's geht, aber nichts klappt.
    Praxis ist wenn's klappt aber man weiß nicht weiso.

    Bei Microsoft sind Theorie und Praxis vereint: Nichts klappt und keiner weiß wieso ;)

    Einmal editiert, zuletzt von Das Schwert (9. Februar 2010 um 18:35)

  • Hast du schon einmal

    [autoit]

    DirRemove("PFAD",1)

    [/autoit]

    probiert?

    Zitat

    1 = Lösche Dateien und Unterverzeichnisse (wie beim DOS-Befehl "DelTree")

    MfG Daniel

    21 is only half the truth.

  • Danke, Das hat geklappt... Nur DirMove geht noch nicht so richtig toll... Ich poste mal den neuen Quelltext, vlt. Findet jmd etwas, wesshalb es nicht geht...

    DirMove gibt (bir mir) jetzt 1 zurück (ich hab jetzt auch dahinter ne 1 gehängt) allerdings behautptet Chromium weiterhin steif es sei immer noch die Alte Version... (Ich hab n ganz altes Build genommen, damit ich dann das neue Drüber spielen kann, mit meinem Prog...)

    Spoiler anzeigen
    [autoit]

    #include <INEt.au3>
    #include <File.au3>
    #include <filelist.au3>
    #include <Array.au3>
    $archive = 1
    $chromepath = "C:\Users\" & @UserName & "\AppData\Local\Chromium\Application"
    $tmpLst = _FileListToArray ("C:\Users\Keno\AppData\Local\Chromium\Application")
    $localVersion = $tmpLst[1]
    $LATEST = _INetGetSource ("http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/LATEST")
    If Not FileExists (@ScriptDir & "\Archive\" & $LATEST & ".zip") Then
    If MsgBox (4, "New version", "A new version of Chromium is avalaible (" & $LATEST & ")! Download it?") == 6 Then
    InetGet("http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/" & $LATEST & "/chrome-win32.zip", @ScriptDir & "\" & $LATEST & ".zip", 0, 1)
    $total = InetGetSize ("http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/" & $LATEST & "/chrome-win32.zip")
    $1Percent = $total / 100
    While @InetGetActive
    $ProgressPercent = StringLeft (@InetgetBytesRead / $1Percent, 2)
    If StringInStr ($ProgressPercent, ".") Then $ProgressPercent = StringLeft ($ProgressPercent, 1)
    TrayTip("Downloading...", $ProgressPercent & "%" & " Version: " & $LATEST, 10, 16)
    Sleep(250)
    Wend
    ShellExecute (@ScriptDir & "\7z.exe", "x " & $LATEST & ".zip", @ScriptDir)
    Do
    Sleep (250)
    Until FileExists (@ScriptDir & "\chrome-win32\resources\inspector\Images\whiteConnectorPoint.png")
    MsgBox (0, "", DirMove (@ScriptDir & "\chrome-win32", $chromepath, 1))
    MsgBox (0, "", DirRemove (@ScriptDir & "\chrome-win32\", 1))
    If $archive Then
    If Not FileExists (@ScriptDir & "\Archive") Then DirCreate (@ScriptDir & "\Archive")
    FileMove (@ScriptDir & "\" & $LATEST & ".zip", @ScriptDir & "\Archive\" & $LATEST & ".zip")
    EndIf
    FileWriteLine (@ScriptDir & "\History.txt", $LATEST)
    EndIf
    EndIf

    [/autoit]

    Aber danke, das hat schonmal geholfen...

    Ich glaube nicht, das es jetzt noch an Syntaxfehlern etc. liegt, eher das ich irgend nen dummen Fehler gemacht hab, und chrome nur halb geupdatet wird odaso...


    EDIT: (2 sec. später :D)

    Ich versuch einfach mal vorher den alten chrome ordner zu löschen...

    EDIT2: (10 sec. später)
    Lösung gefunden, er hats nicht nach C:\Users\User\AppData\Local\Chromium\Application, sonder nach .......\Chromium\Application\chrome-win32 kopiert... :rofl:

    Theorie ist wenn man weiß wie's geht, aber nichts klappt.
    Praxis ist wenn's klappt aber man weiß nicht weiso.

    Bei Microsoft sind Theorie und Praxis vereint: Nichts klappt und keiner weiß wieso ;)