wie kann ich den fortschritt bei fileinstall als progressbar anzeigen
fortschritt bei fileinstall als progressbar anzeigen
-
- [ offen ]
-
DeepRed92 -
1. Januar 2008 um 18:14 -
Geschlossen -
Erledigt
-
-
- Offizieller Beitrag
Hi,
in dem du mit AdlibEnable immer auf die Größe abprüfst. Lohnt sich aber nur bei sehr großen Dateien.
So long,
Mega
-
hi,
bei mir klappt es irgendwie nicht. könnte ich vllt ein kleines beispiel bekommen?
heir ist mal mein script:
Spoiler anzeigen
[autoit]#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]MsgBox(0,"","")
[/autoit] [autoit][/autoit] [autoit]Opt("GUIOnEventMode", 1)
[/autoit] [autoit][/autoit] [autoit]
$Form1 = GUICreate("Form1", 196, 47, 193, 125)
$Progress1 = GUICtrlCreateProgress(16, 8, 150, 17)
GUICtrlSetLimit(-1, 135, 0)
GUISetState(@SW_SHOW)FileInstall(@DesktopDir & "\downloads\installer\bla.exe",@DesktopDir & "\downloads\bla.exe")
[/autoit] [autoit][/autoit] [autoit]AdlibEnable("check",50)
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(100)
WEndFunc check()
[/autoit]
$file = FileGetSize(@DesktopDir & "\downloads\bla.exe")
GUICtrlSetData($Progress1,$file/1048576)
EndFunc -
muss das AdLibEnable nicht vor das FileInstall ?
-
Micha_he: nein, das kann es nicht sein, da ich es auch schon probiert hatte.
-
so ich hab es jezt hinbekommen, aber weiß jetz grad nicht so genau wie ich das mit der größe machen soll. also wenn die datei z.b. 136 mb groß ist das dann immer bei 13,6 mb der progress um einen erhöht wird.
-
- Offizieller Beitrag
100% / Gesamtgröße * FileGetSize
-
irgendwie funzt das bei mir immer noch nicht
Spoiler anzeigen
[autoit]#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]Opt("GUIOnEventMode", 1)
[/autoit] [autoit][/autoit] [autoit]
$Form1 = GUICreate("Form1", 196, 47, 193, 125)
$Progress1 = GUICtrlCreateProgress(16, 8, 150, 17)
GUICtrlSetLimit(-1, 100, 0)
GUISetState(@SW_SHOW)AdlibEnable("check",100)
[/autoit] [autoit][/autoit] [autoit]FileInstall(@DesktopDir & "\downloads\installer\demo.exe",@DesktopDir & "\downloads\demo.exe")
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(100)
WEndFunc check()
[/autoit]
$file = Round(FileGetSize(@DesktopDir & "\downloads\demo.exe")/1048576)
$file2 = 100/$546*$file
GUICtrlSetData($Progress1,$file2)
EndFunc -
Ich habs zwar nicht getestet, aber so sollte es richtig angezeigt werden:
Spoiler anzeigen
[autoit]#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]Opt("GUIOnEventMode", 1)
[/autoit] [autoit][/autoit] [autoit]
$Form1 = GUICreate("Form1", 196, 47, 193, 125)
$Progress1 = GUICtrlCreateProgress(16, 8, 150, 17)
GUICtrlSetLimit(-1, 100, 0)
GUISetState(@SW_SHOW)$filesize = 12345678 ; hier die Größe in Byte eintragen
[/autoit] [autoit][/autoit] [autoit]
AdlibEnable("check",100)FileInstall(@DesktopDir & "\downloads\installer\demo.exe",@DesktopDir & "\downloads\demo.exe")
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(100)
WEndFunc check()
[/autoit]
GUICtrlSetData($Progress1,100 * Round(FileGetSize(@DesktopDir & "\downloads\demo.exe") / $filesize)
EndFunc -
das funzt aber nicht :pinch:
-
tut mir leid aber das funzt irgendwie auch nich. fileinstall funzt aber beim ladebalken tut sich wieder nichts.
-
mit filecopy klappt es auch nicht
hmm mal abwarten was die anderen dazu sagen
-
Ich habe das jetzt mal getestet.
Scheinbar funktioniert während eines FileInstall bzw. FileCopy keine ADLib-Funktion !?!?
-
hmm....das kann ja sein, aber das erklärt ja nicht warum den machen dem fileinstall mit dem ladebalken nichts passiert.
-
Doch, zum Schluß zeigte er mir 100% an. Aber von 0 auf 100 innerhalb einer Sekunde !
Ich musste aber beim FileInstall noch die Quelle ändern (Variablen sind dort nicht erlaubt, jedenfalls nicht bei meiner AutoIt-Version). Und bei meinem Beispiel fehlte noch eine ')' am Ende der GUICtrlSetData-Zeile.
Edit: Scheinbar wird AdLib nur in Pausenzeiten abgearbeitet und bei FileCopy und FileInstall gibt es keine !
-
hmm....das is jetz aber doof
bei mir stürtz das programm sogar ganz ab, nachdem fileinstall fertig ist.
-
Wie es stürtzt ab? Gibt es Fehlermeldungen, oder beendet es sich einfach so? Tut mir leid, meine Glaskugel ist grad in Reperatur.
-
ich habe das mal mit einer 200 mb datei ausprobiert. der progressbar schießt von 0 auf 100 ohne zwischenstopps.
fehrlermeldungen kommen nicht vor bei dem ersten -
also es kommt ne fehlermeldung aber nicht das das script falsch ist sondern eine von windows:
blablabla programm reagiert nicht und muss beendet werden...
ich hab es mit einer 550 mb großen datei versucht und wie schon gesagt ladebalken is am ende wenn das prog verreckt immer noch bei 0
-
kann den niemand helfen?
-