Hallo ihr beiden,
jop so ungefähr hatte ich mir das gedacht. ![]()
Alles anzeigenSo vllt?
Spoiler anzeigen
[autoit]#include
[/autoit]
Dim $ver = "1.1.0"
$FormUpdate = GUICreate("Update Prüfung", 350, 130, 192, 139)
GUICtrlCreatePic("data\Backround\Background.tgx", 0, 0, 350, 130)
GUICtrlSetState(-1, $GUI_DISABLE)
GUICtrlCreateLabel("Es wird geprüft ob ein Update vorhanden ist!", 22, 45, 350, 40)
GUICtrlSetFont(-1, 10, 600)
GUICtrlSetColor(-1, 16777215)
GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
GUISetState()
InetGet("http://test.de/test/update.txt", @ScriptDir & "\data\update.txt", 1, 0)
$file = FileOpen(@ScriptDir & "\data\update.txt", 0)
$line = FileReadLine($file, 1)
$line2 = FileReadLine($file, 2)
$line2 = 1
GUIDelete($FormUpdate)
If $line = $ver Then
FileClose($file)
Else
$fg = MsgBox(52, "Es ist eine neue Version vorhanden!", "Möchtest du jetzt Updaten?")
If $fg = 6 Then
InetGet("http://test.de/test/test.sfx.exe", @ScriptDir & "\test.sfx.exe", 1, 0)
MsgBox(48, "Update abgeschlossen", "Du hast nun die Aktuellste Version!: (" & $ver & ")")
FileClose($file)
Run(@ScriptDir & "\test.sfx.exe")
Exit
EndIf
EndIf
vielden dank für diese super tolle Demo GUI! ![]()
Alles anzeigenHier mal eine Demo GUI die vielleicht das ist was du suchst...
Spoiler anzeigen
[autoit][/autoit] [autoit][/autoit] [autoit]
#include
#include
#include
#includeGlobal $ver = "1.1.0"
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$GUI = GUICreate("Meine GUI", 625, 445, 192, 124)
[/autoit] [autoit][/autoit] [autoit]; controls der Update Routine:
[/autoit] [autoit][/autoit] [autoit]$ButtonJA = GUICtrlCreateButton("JA", 144, 304, 89, 33, $WS_GROUP)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetState(-1,$GUI_HIDE)
$ButtonOK = GUICtrlCreateButton("OK", 144, 304, 89, 33, $WS_GROUP)
GUICtrlSetState(-1,$GUI_HIDE)
$ButtonNEIN = GUICtrlCreateButton("NEIN", 253, 304, 89, 33, $WS_GROUP)
GUICtrlSetState(-1,$GUI_HIDE)
$LabelUpdater = GUICtrlCreateLabel("Es wird nun auf Updates geprüft", 96, 80, 200, 50); controls der normalen GUI:
[/autoit] [autoit][/autoit] [autoit]$Button1 = GUICtrlCreateButton("Button1", 40, 56, 75, 25, $WS_GROUP)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetState(-1,$GUI_HIDE)
$Button2 = GUICtrlCreateButton("Button2", 32, 184, 75, 25, $WS_GROUP)
GUICtrlSetState(-1,$GUI_HIDE)
$Button3 = GUICtrlCreateButton("Button3", 80, 224, 75, 25, $WS_GROUP)
GUICtrlSetState(-1,$GUI_HIDE)
$Button4 = GUICtrlCreateButton("Button4", 32, 112, 75, 25, $WS_GROUP)
GUICtrlSetState(-1,$GUI_HIDE)
$Button5 = GUICtrlCreateButton("Button5", 232, 264, 161, 49, $WS_GROUP)
GUICtrlSetState(-1,$GUI_HIDE)
$Edit1 = GUICtrlCreateEdit("blahblahblah....", 176, 32, 305, 193)
GUICtrlSetState(-1,$GUI_HIDE)
$Label1 = GUICtrlCreateLabel("bluberdiblub", 72, 360, 90, 20)
GUICtrlSetState(-1,$GUI_HIDE)GUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]
Sleep(5000) ; nur zu demozwecken um die Meldung lesen zu können....if updatecheck() = -1 Then
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData($LabelUpdater, "Du benutzt bereits die neueste Version.")
GUICtrlSetState($ButtonOK,$GUI_SHOW)
Else
GUICtrlSetData($LabelUpdater, "Es steht eine neue Version zur Verfügung. Soll diese installiert werden?")
GUICtrlSetState($ButtonJA,$GUI_SHOW)
GUICtrlSetState($ButtonNEIN,$GUI_SHOW)
EndIfWhile 1
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $ButtonJA
GUICtrlSetData($LabelUpdater,"Update wird jetzt heruntergeladen...")
GUICtrlSetState($ButtonJA,$GUI_HIDE)
GUICtrlSetState($ButtonNEIN,$GUI_HIDE)
installupdate() ; lädt neue version herunter führt den installer aus und verlässt das programm...
Case $ButtonNEIN, $ButtonOK
; alle controls der Update Routine unsichtbar machen:
GUICtrlSetState($ButtonJA,$GUI_HIDE)
GUICtrlSetState($ButtonNEIN,$GUI_HIDE)
GUICtrlSetState($ButtonOK,$GUI_HIDE)
GUICtrlSetState($LabelUpdater,$GUI_HIDE)
; alle controls der normalen GUI sichtbar machen:
GUICtrlSetState($Button1,$GUI_SHOW)
GUICtrlSetState($Button2,$GUI_SHOW)
GUICtrlSetState($Button3,$GUI_SHOW)
GUICtrlSetState($Button4,$GUI_SHOW)
GUICtrlSetState($Button5,$GUI_SHOW)
GUICtrlSetState($Edit1,$GUI_SHOW)
GUICtrlSetState($Label1,$GUI_SHOW)
EndSwitch
WEndFunc updatecheck()
[/autoit] [autoit][/autoit] [autoit]
;InetGet("http://test.de/test/update.txt", @Scriptdir & "\data\update.txt", 1, 0) ; auskommentiert zu demozwecken
;$file = FileOpen(@Scriptdir & "\data\update.txt", 0) ; auskommentiert zu demozwecken
;$line = FileReadLine($file, 1) ; auskommentiert zu demozwecken
$line = "2.1.0" ; nur zu demozwecken, stattdessen einfach obige zeilen einkommentieren und diese hier entfernen
If $line = $ver Then
return -1 ; keine neue version vorhanden
Else
Return 1 ; neue version vorhanden
EndIf
EndFuncFunc installupdate()
[/autoit]
;InetGet("http://test.de/test/test.sfx.exe", @ScriptDir & "\test.sfx.exe", 1, 0); auskommentiert zu demozwecken
;Run(@ScriptDir & "\test.sfx.exe"); auskommentiert zu demozwecken
Sleep(2000); nur zu demozwecken...
Exit
EndFunc
misterspeed zum zweiten
jop habe im nachhinein auch nochmal nachgesehen, ich war nur so erschrocken
weil es extrem furchtbar aussah!
Aber nichts desto trotz hat es mir nicht so gut gefallen wie die Label Variante!
Naja ein Blick in die Hilfe würde manchmal eben auch nicht schaden. Im Gegensatz zur Msgbox kann man bei SplashTextOn nämlich jedemenge am Aussehen verändern, wie Fenstergröße, Umrandung, Schriftart, Schriftgröße und Ausrichtung der Schrift.
Mfg Ghostleader