Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 03:23

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Progressbar in Update einbauen

Discussion on Progressbar in Update einbauen within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2010
Posts: 24
Received Thanks: 0
Progressbar in Update einbauen

Hallo AutoIt´ler,

ich wende mich an euch mit einer Frage die für die meisten von euch sicherlich einfach zu beantworten ist, aber für mich leider nicht.
Und zwar setze ich euch hier unseren Update Code in eine Code Box und möchte gerne wissen wie, wo und was ich an welche stelle setzen muss um vom Update start bis ende einen Ladebalken mitlaufen zu haben!

Schön wäre es wenn ihr mir beim einsetzen in den Code vielleicht kurz was dazu schreiben könntet warum gerade das und warum es dort hin kommt, damit ich es nachvollziehen und dadurch verstehen und lernen kann!

Vielen dank!

Hier der Code:
Code:
Func UPDATECHECK()
	DATENBANKENPRUEFEN()
	If $M <> 700 Then
		$TEMP[1] = GUICtrlCreateLabel(TRANSLATION("Es wird geprüft, ob neue Updates vorliegen. Bitte warten..."), 180, 320, 520, 25, $SS_CENTER)
		GUICtrlSetFont(-1, 14, 400)
	EndIf
	FileSetAttrib("*.*", "-r", 1)
	$VAR = 1
	If $VAR Then
		If IniRead($SCRIPTPATH & "data\config.ini", "TestUpdate", "Server", $ALTERNATIVEUPDATESERVER) = "http://www.test-test.eu" Then
			IniWrite($SCRIPTPATH & "data\config.ini", "TestUpdate", "Server", $ALTERNATIVEUPDATESERVER)
		EndIf
		$TZ = LOADFILE(IniRead($SCRIPTPATH & "data\config.ini", "TestUpdate", "Server", $ALTERNATIVEUPDATESERVER) & "/Updateinfo.data", $SCRIPTPATH & "data\Updateinfo.data")
		If $TZ = 1 Then
			$UNR = Number(IniRead($SCRIPTPATH & "data\Updateinfo.data", "Serverversion", "Versionnr", ""))
			$UPFAD = IniRead($SCRIPTPATH & "data\Updateinfo.data", "Serverversion", "Versionname", "")
			$FMIN = IniRead($SCRIPTPATH & "data\Updateinfo.data", "Serverversion", "Fullversionnr", "")
			$UMINPFAD = IniRead($SCRIPTPATH & "data\Updateinfo.data", "Serverversion", "Fullversionname", "")
			If $M <> 700 Then GUICtrlDelete($TEMP[1])
			If $LUPDATE = 0 Then
				If $UNR = 0 Then
					MsgBox(16, TRANSLATION("Updatecheck Fehler"), TRANSLATION("Die Updatedatei wurde vom Server fehlerhaft geladen!"), 0)
				ElseIf $UNR > $VNR Then
					If $VNR > $FMIN Then
						$JANEIN = MsgBox(68, "Update Information", TRANSLATION("Neues Update") & " '" & $UPFAD & "' " & TRANSLATION("verfügbar. Laden?"), 0)
						If $JANEIN = 6 Then
							If $M <> 700 Then
								$TEMP[1] = GUICtrlCreateLabel(TRANSLATION("Neues Update wird geladen. Bitte warten..."), 180, 320, 520, 25, $SS_CENTER)
								GUICtrlSetFont(-1, 14, 400)
							EndIf
							$FILE = IniRead($SCRIPTPATH & "data\config.ini", "TestUpdate", "Server", $ALTERNATIVEUPDATESERVER) & "/" & $UPFAD & ".exe"
							FileDelete($SCRIPTPATH & "Updates\Test Test Update*.*")
							LOADFILE($FILE, $SCRIPTPATH & "Updates\" & $UPFAD & ".exe")
							GUICtrlDelete($TEMP[1])
							MsgBox(64, "Update Information", TRANSLATION("Update wurde geladen und wird nun installiert. Der Test wird dazu geschlossen."), 0)
							If WinExists("Test-Counter") Then
								WinKill("Test-Counter")
							EndIf
							If WinExists("Test-Tray") Then
								WinKill("Test-Tray")
							EndIf
							Run($SCRIPTPATH & "Updates\" & $UPFAD & ".exe")
							Exit
						EndIf
					Else
Mfg Ghostleader
Ghostleader111 is offline  
Old 02/09/2011, 23:56   #2
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
InetGetInfo()

Wär evtl. gut wenn du alle zusammenhängende Funktionen vollständig posten würdest, mit dem Codefetzen kann man nichts anfangen.
KDeluxe is offline  
Old 02/10/2011, 05:46   #3
 
elite*gold: 0
Join Date: Oct 2010
Posts: 24
Received Thanks: 0
Hallo KillerDeluxe,

ich weiss leider nicht genau was noch fehlen soll, der Code des Programmes ist insgesammt 27500 Zeilen lang und den kann ich auch nicht im ganzen Posten! Das was ich hier gepostet habe ist die Update Funktion. Was fehlt denn noch?

Mfg
Ghostleader111 is offline  
Old 02/10/2011, 14:22   #4
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Ich bin mir zu 100% sicher, dass man das Script kürzen kann.

Viele Wege führen nach Rom, hier ist einer:
PHP Code:
#include <GUIConstants.au3>

GUICreate("Download"22065)
$Progress GUICtrlCreateProgress(101020015)
$Button GUICtrlCreateButton("Download"103520025)
GUISetState()

Global 
$File$Download False
$URL 
"http://www.autoitscript.com/files/autoit3/autoit-v3-setup.exe"
$FileName = @ScriptDir "\AutoIt v3 Setup.exe"

While Sleep(10)
    
$nMsg GUIGetMsg()
    If 
$nMsg == $GUI_EVENT_CLOSE Then
        
Exit
    ElseIf 
$nMsg == $Button Then
        
If InetGetSize($URL) > 0 Then     ;wenn die Datei existiert
            
If $Download Then             ;wenn die Datei gedownloaded wird
                $Download 
False
                InetClose
($File)
                
FileDelete($FileName)
                
GUICtrlSetData($Progress0)
                
GUICtrlSetData($Button"Download")
            Else                         ;
wenn der Download noch nicht läuft
                $Download 
True
                $File 
InetGet($URL$FileName11)
                
GUICtrlSetData($Button"Abbruch")
            EndIf
        EndIf
    EndIf

    If 
$Download Then                     ;wenn die Datei gedownloaded wird
        $Info 
InetGetInfo($File)        ;Informationen über den momentanen Download ($File)
        
GUICtrlSetData($Progress$Info[0] * 100 $Info[1]);prozentualer Fortschritt des Downloads

        
If $Info[2Then                ;wenn die Datei vollständig herunter geladen wurde
            GUICtrlSetData
($Button"Download")
            
InetClose($File)
            
$Download False
        
EndIf
    EndIf
WEnd 
KDeluxe is offline  
Thanks
2 Users
Old 02/10/2011, 15:23   #5
 
elite*gold: 0
Join Date: Oct 2010
Posts: 24
Received Thanks: 0
Hallo KillerDeluxe,

danke erstmal für die Arbeit die du dir gemacht hast! Versteh mich bitte nicht falsch, das Scrippt soll sich eigendlich nicht ändern, da ich noch nicht soweit in AutoIt bin um den Rest des Codes dann an deine Variante an zu passen fals du diese jetzt überhaupt für mich so geschrieben hast und es nicht nur ein Beispiel ist was ich ja nun garnicht weiss Sorry!

Kann mann denn den Teil der Progressbar den ich in deinem Script sehe nicht in das von mir gezeigte eintragen?
Ich weiss das ich ein schwerer Fall in der Hinsicht bin, aber hoffe dennoch auf Nachsicht und weitere Hilfe!
Ich möchte ja unbedingt viel lernen aber Rom ist ja auch nicht an einem Tag erbaut und leider ist es ja mit der lernerei auch so

Mfg Ghostleader

Ps. was brauchst du/ihr denn noch was fehlt um mir da direkt helfen zu können?
Ghostleader111 is offline  
Old 02/10/2011, 15:41   #6
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Das ist ein sehr kleines Script, zudem recht simpel. Mit dem geposteten Codefetzen von dir kann man nun mal nicht viel machen.
KDeluxe is offline  
Old 02/10/2011, 16:01   #7
 
elite*gold: 0
Join Date: Oct 2010
Posts: 24
Received Thanks: 0
Ich weiss ja nicht was du von wo noch brauchst. Wenn ich das wüsste dann wäre das ja einfacher die zu schicken!

Ist denn das nicht genau das was benötigt wird?
Code:
							If $M <> 700 Then
								$TEMP[1] = GUICtrlCreateLabel(TRANSLATION("Neues Update wird geladen. Bitte warten..."), 180, 320, 520, 25, $SS_CENTER)
								GUICtrlSetFont(-1, 14, 400)
							EndIf
							$FILE = IniRead($SCRIPTPATH & "data\config.ini", "TestUpdate", "Server", $ALTERNATIVEUPDATESERVER) & "/" & $UPFAD & ".exe"
							FileDelete($SCRIPTPATH & "Updates\Test Test Update*.*")
							LOADFILE($FILE, $SCRIPTPATH & "Updates\" & $UPFAD & ".exe")
							GUICtrlDelete($TEMP[1])
mfg
Ghostleader111 is offline  
Old 02/10/2011, 17:31   #8
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Ich würde mal meinen, dass deine "LOADFILE()" Funktion nichts anderes macht, als InetGet zu benutzen. Diese Funktion müsstest du einfach entsprechend meines Beispiels anpassen.
KDeluxe is offline  
Thanks
1 User
Old 02/11/2011, 05:31   #9
 
elite*gold: 0
Join Date: Oct 2010
Posts: 24
Received Thanks: 0
Hallo KillerDeluxe,

danke für deine vielen Antworten. Nun noch eine frage. Und zwar was alles aus deinem gezeigten Code müsste ich für mich übernehmen und passt das da in meinen wie do es so schön nennst Code Schnippsel, oder muss ich noch nach etwas anderem im Quellcode suchen?

Mfg Ghostleader
Ghostleader111 is offline  
Old 02/11/2011, 14:32   #10
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Wenn das Script trotz des Download weiter benutzbar sein sollte, müsstest du alles übernehmen. Andernfalls würde es auch so gehen:
PHP Code:
Func LOADFILE($URL$Filename$Progressbar)
    If 
InetGetSize($URL) > 0 Then ;wenn die Datei existiert
        $Download 
InetGet($URL$Filename11)
        Do
            
$Info InetGetInfo($Download)
            
GUICtrlSetData($Progressbar$Info[0] * 100 $Info[1])
        
Until $Info[2]
        Return 
SetError(0""True) ;Datei wurde erfolgreich herunter geladen
    
Else
        Return 
SetError(1""False) ;Datei existiert nicht
    
EndIf
EndFunc 
KDeluxe is offline  
Thanks
1 User
Old 02/11/2011, 15:24   #11
 
elite*gold: 0
Join Date: Oct 2010
Posts: 24
Received Thanks: 0
Hallo KillerDeluxe,

danke wiedereinmal für deine Mühe, nur leider verstehe ich deinen Satz nicht so recht:
Quote:
Wenn das Script trotz des Download weiter benutzbar sein sollte, müsstest du alles übernehmen. Andernfalls würde es auch so gehen:
Was soll das bedeuten?
Wenn ich das von dir zuletzt erstellte benutze geht das ganze skript von mir nicht mehr, aber wenn ich den ganzen code von weider oben nehme geht es weiterhin oder wie soll ich das verstehen?

Ich weiss aber auch immernoch nicht wo ich bei mir dann egal welches deiner beiden diese einfügen muss!

Ogott, ich weiss das ich ein schwerer Fall bin!

Mfg Ghostleader
Ghostleader111 is offline  
Old 02/11/2011, 17:13   #12
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Ich kann beim besten willen nicht verstehen, was an meinem kleinen Script nicht nachvollziehbar ist. Es lässt sich ohne Probleme in jedes Script einbinden.

PHP Code:
;/////////////
;Hier ist deine GUI
;/////////////

;/////////////////////////////////////////////////////////////////////
Global $File$Download False ;globale Variablen
;/////////////////////////////////////////////////////////////////////

While Sleep(10) ;deine Hauptschleife
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
;....
        Case 
$DeinButtonUmDenDownloadZuStarten
            $Download 
LOADFILE("http://www.autoitscript.com/files/autoit3/autoit-v3-setup.exe", @ScriptDir "\AutoIt v3 Setup.exe")
        ;...
    EndSwitch
    ;...

    If 
$Download Then
        $Info 
InetGetInfo($File)
        
GUICtrlSetData($DeineProgressbarFuerDenAktuellenDownloadStatus$Info[0] * 100 $Info[1])

        If 
$Info[2Then
            InetClose
($File)
            
$Download False
        
EndIf
    EndIf
WEnd

Func LOADFILE
($URL$Filename)
    If 
InetGetSize($URL) > 0 Then
        $File 
InetGet($URL$Filename11)
        Return 
SetError(0""True)
    Else
        Return 
SetError(1""False)
    EndIf
EndFunc 
Wenn du nicht in der Lage bist, diese paar Zeilen in dein Script einzubinden, kann dir niemand helfen, dein Script steht ja niemanden zur Verfügung. Du solltest mal damit anfangen, das zu lernen, was du benutzen möchtest. Per C&P kommt man auf langem Wege nicht weit, das solltest du spätestens jetzt begriffen haben.
KDeluxe is offline  
Thanks
1 User
Old 02/11/2011, 19:57   #13
 
elite*gold: 0
Join Date: Oct 2010
Posts: 24
Received Thanks: 0
Danke für die Mühe die du dir mit mir gegeben hast!

Mfg Ghostleader
Ghostleader111 is offline  
Reply


Similar Threads Similar Threads
progressbar
07/22/2010 - AutoIt - 10 Replies
hab mal wieder ne kleine frage, undzwar will ich, wenn ich ein button drücke die progressbar sich jedesmal um 20erhöht, aber bekomm das iwie nicht hin ... in internet hab ich dazu nicht wirklich was gefunden.... mein bsp. code: #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <ProgressConstants.au3>
Progressbar
06/18/2010 - AutoIt - 2 Replies
$get1 = InetGet("...",$zgh & "\...") $inf1 = InetGetInfo($get1,0) Do GUICtrlSetData($Progress1,$inf1) Until InetGetInfo($get1,2) = True Also, die Progressbar bleibt leer und die GUI ist scheintot, aber es lädt die Datei... 1. Progressbar soll konstant zum Download sein. 2. GUI soll aktiv bleiben.
VB-Webbrowser mit ProgressBar
05/09/2010 - .NET Languages - 2 Replies
Hey Leute Ich bekomme es einfach nicht hin, das beim laden einer seite in meinem webbrowser der progressbar den ladefortschritt der seite zeigt die ich aufrufen möchte. kann mir jemand konkret erklären wie das klappt was oben steht? Danke
How to Make Progressbar
10/02/2009 - Coding Tutorials - 1 Replies
Visual Basics 6.0 - Progressbar Helloworld YouTube - Visual Basics 6.0 - Progressbar Helloworld How to Make a advanced progressbar in visual basic 2008 YouTube - How to Make a advanced progressbar in visual basic 2008
[PROGRESSBAR/MP3]HiLFE
08/25/2009 - AutoIt - 14 Replies
1.Also ich habe mit dem KODA form designer eine progress bar erstellt und jetzt weiss ich nicht wie ich sie zum laufen bringe des sollte dann gehen z.B. wenn button oder so gedrückt wird wie mache ich das und kann man dann auch irgendwie überprüfen ob die Progressbar fertig geladen ist? 2.Also ich wollte fragen ob ich eine mp3 oder wenns seien muss eine wav datei wärend einem skript abspielen kann wenn ja wie??? Wer mir hilft bekommt thanks ;) MFG



All times are GMT +1. The time now is 03:25.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.