Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 17:58

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

Advertisement



Problem beim Vergleich zweier Variabeln

Discussion on Problem beim Vergleich zweier Variabeln within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1

 
elite*gold: 808
Join Date: Jul 2010
Posts: 7,984
Received Thanks: 1,652
Problem beim Vergleich zweier Variabeln

Grüße!

Ich habe ein Problem beim Vergleich von 2 Variabeln. Ich habe es nun so gelöst, doch bekomm ich eine Errormeldung.

Code:
$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."

If $ver_old >= $ver_new Then
	$upd_nn
ElseIf $ver_old > $ver_new Then
	$upd_nwd
EndIf
$upd_nn und $upd_nwm werden in einem Label angezeigt. Je nachdem, was zuerst zutrifft.

Da mir google nichts hilfreiches zur Zeit ausspuckt, suche ich nun Rat bei Euch. Habe ich einen Fehler in dem Ding gemacht oder kann man dafür etwas besseres verwenden?

MfG
°"Crazy"° is offline  
Old 10/21/2011, 21:58   #2
 
elite*gold: 35
Join Date: Apr 2011
Posts: 800
Received Thanks: 214
Ich sehe nicht ganz was dir diese einzelne Variable im nirgendwo bringen soll wenn sie keinen bezug zu etwas anderem hat...
.AppleTree. is offline  
Old 10/21/2011, 21:59   #3

 
elite*gold: 808
Join Date: Jul 2010
Posts: 7,984
Received Thanks: 1,652
Code:
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Include <string.au3>
#include <INet.au3>

$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."
$ver_old = IniRead("version.ini", "version", "version", "Core not found!")
/version.ini"), "[version]" , @CRLF)
$ver_new = _INetGetSource("http://secretgaming.de/trinity/version.ini")
_StringBetween($ver_new, "[version]", @CRLF)



If $ver_old >= $ver_new Then
	$upd_nn
Elseif $ver_old > $ver_new Then
	$upd_nwd
	EndIf
	


#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Privatserver Updater", 620, 215, 433, 143)
$Combo1 = GUICtrlCreateCombo("TrinityCore", 208, 16, 201, 25)
$Label2 = GUICtrlCreateLabel("Ihre aktuelle Version", 128, 72, 116, 25)
$Label3 = GUICtrlCreateLabel("Verfügbare Version", 376, 72, 116, 25)
$Label4 = GUICtrlCreateLabel($ver_old, 144, 104, 84, 25)
$Label5 = GUICtrlCreateLabel($ver_new, 392, 104, 84, 25)
$Button1 = GUICtrlCreateButton("Update", 256, 176, 107, 33, $WS_GROUP)
$Label6 = GUICtrlCreateLabel("$update2", 168, 144, 276, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###


While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

	EndSwitch

WEnd
Das ist zur Zeit mein Teilscript. Damit hast du den Bezug.
°"Crazy"° is offline  
Old 10/21/2011, 22:09   #4
 
elite*gold: 0
Join Date: Oct 2010
Posts: 51
Received Thanks: 12
If $ver_old >= $ver_new Then ;Falls $ver_old größer oder gleich Dann
$upd_nn ;tue bla
ElseIf $ver_old > $ver_new Then ; falls alte Version größer als neue Dann
$upd_nwd ;Bla
EndIf

Ich glaube, das erklärt, warum du deinen Fehler hast. Wenn das 1. zutrifft, trifft auch das 2. zu. besser wäre so:
PHP Code:
If $oldversion $NewVersion Then
MsgBox
(4096,"DU""KOMISCHER KAUTZ; DEINE TREIBER SIND ALT!")
ElseIf 
$OldVersion $NewVersion Then
MsgBox
(4096"DU" ,"OTTONORMALVERBRAUCHER; DEINE TREIBER SIND OK!")
ElseIf 
$OldVersion $NewVersion Then
MsgBox
(4096"Sehr lustig,""Deine Treiber sind neuer als die neueste Version. HAHA")
EndIf 
Außerdem hast du da auch einen Fehler:

PHP Code:
$ver_old IniRead("version.ini""version""version""Core not found!")
/
version.ini"), "[version]" , @CRLF) 
unter den includes...

weiterhin ist deine Neue Version ausleseVariante falsch, sie liest zwischen dem Header [Version] und dem Leerzeichen. Da eine .ini aber so aufgebaut ist:
PHP Code:
[Version]
Ver_New=3.1 
findet er ja automatisch nichts. Du mpsstest theoretisch
_StringBetween($ver_new, "Ver_New=", @CRLF)
machen
klavier22 is offline  
Thanks
1 User
Old 10/21/2011, 22:10   #5
 
elite*gold: 35
Join Date: Apr 2011
Posts: 800
Received Thanks: 214
@Klavier das Vergleichen ist schon korrekt fals du das gemeint hast.

Code:
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Include <string.au3>
#include <INet.au3>

$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."
$ver_old = IniRead("version.ini", "version", "version", "Core not found!")
/version.ini"), [COLOR="Red"]"version"[/COLOR] , @CRLF)
$ver_new = _INetGetSource("http://secretgaming.de/trinity/version.ini")
_StringBetween($ver_new, [COLOR="red"]"version"[/COLOR], @CRLF)



If $ver_old >= $ver_new Then
	[COLOR="red"]GUICtrlSetData ($Label6, $upd_nnn)[/COLOR]
Elseif $ver_old > $ver_new Then
	[COLOR="Red"]GUICtrlSetData ($Label6, $upd_nwd)[/COLOR]
	EndIf
	


#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Privatserver Updater", 620, 215, 433, 143)
$Combo1 = GUICtrlCreateCombo("TrinityCore", 208, 16, 201, 25)
$Label2 = GUICtrlCreateLabel("Ihre aktuelle Version", 128, 72, 116, 25)
$Label3 = GUICtrlCreateLabel("Verfügbare Version", 376, 72, 116, 25)
$Label4 = GUICtrlCreateLabel($ver_old, 144, 104, 84, 25)
$Label5 = GUICtrlCreateLabel($ver_new, 392, 104, 84, 25)
$Button1 = GUICtrlCreateButton("Update", 256, 176, 107, 33, $WS_GROUP)
$Label6 = GUICtrlCreateLabel($update2, 168, 144, 276, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###


While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

	EndSwitch

WEnd
Bitte nenne alles bissel um in Sinvolle Variablen sonst sitzt du plötzlich stoned vorm PC und hast kp was geht^^
.AppleTree. is offline  
Thanks
1 User
Old 10/21/2011, 22:24   #6

 
elite*gold: 808
Join Date: Jul 2010
Posts: 7,984
Received Thanks: 1,652
@klavier.

Beim 2. Fehler habe ich es hier gelöscht. Schon blöd, wenn man keine Farbe hier hat. Da hast du vollkommen recht.

Ansonsten möchte ich keine MsgBox haben, sondern es als Variable ausgespuckt haben. Besser ist es natürlich wie bei Creeper, nur ohne folgende Fehlermeldung:
Code:
GUICtrlSetData ($Label6, $upd_nnn)
GUICtrlSetData (^ ERROR
>Exit code: 1    Time: 1.025
@Creeper
Die Variablenamen ergebe bei mir Sinn. Man muss sie selbst verstehen können.

Danke bisher von Euch beiden.


Edit:
Code:
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Include <string.au3>
#include <INet.au3>

$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."
$ver_old = IniRead("version.ini", "version", "version", "Core not found!")

$ver_new = _INetGetSource("http://secretgaming.de/trinity/version.ini")
_StringBetween($ver_new, "version=", @CRLF)



If $ver_old >= $ver_new Then
	GUICtrlSetData ($Label6, $upd_nnn)
Elseif $ver_old < $ver_new Then
	GUICtrlSetData ($Label6, $upd_nwd)
	EndIf
	


#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Privatserver Updater", 620, 215, 433, 143)
$Combo1 = GUICtrlCreateCombo("TrinityCore", 208, 16, 201, 25)
$Label2 = GUICtrlCreateLabel("Ihre aktuelle Version", 128, 72, 116, 25)
$Label3 = GUICtrlCreateLabel("Verfügbare Version", 376, 72, 116, 25)
$Label4 = GUICtrlCreateLabel($ver_old, 144, 104, 84, 25)
$Label5 = GUICtrlCreateLabel($ver_new, 392, 104, 84, 25)
$Button1 = GUICtrlCreateButton("Update", 256, 176, 107, 33, $WS_GROUP)
$Label6 = GUICtrlCreateLabel("Update2", 168, 144, 276, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###


While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

	EndSwitch

WEnd
Nun alles eingesetzt. Doch beim Auslesen der Datei bekomme ich die ganze ini - Datei zurückgeworfen. Zudem der Fehler oben immernoch vorhanden.
°"Crazy"° is offline  
Old 10/21/2011, 22:39   #7
 
elite*gold: 35
Join Date: Apr 2011
Posts: 800
Received Thanks: 214
habs nur flüchtig gemacht ohne zu testen deshalb der fehler
Das If zeug muss unter die Koda Section, weil zum oberen Zeitpunkt existiert $Label6 noch net^^ und du hast einen "n" zu viel
@ Klavier: das nennt man vergleichen und ansonsten stimmt If zeug eig abgesehen von der Pos
.AppleTree. is offline  
Thanks
1 User
Old 10/21/2011, 22:41   #8

 
elite*gold: 808
Join Date: Jul 2010
Posts: 7,984
Received Thanks: 1,652
Ist ja egal, wie mans nennt. :P Ich mag halt nicht viel schreiben ^^

Code:
If $ver_old = $ver_new Then
	GUICtrlSetData ($Label6, $upd_nn)
Elseif $ver_old < $ver_new Then
	GUICtrlSetData ($Label6, $upd_nwd)
	EndIf
Das habe ich nun umgeändert für die richtige Logikfolge. Doch zeigt er mir nichts im Label an, was er eigentlich anzeigen sollte. Muss ich da noch was ändern?

MfG


//Edit
Fehler gefunden, Vorposter hat mir den entscheidenen Tipp gegeben.
°"Crazy"° is offline  
Old 10/21/2011, 22:50   #9
 
elite*gold: 35
Join Date: Apr 2011
Posts: 800
Received Thanks: 214
Wath happens?
Screen von der MsgBox pls?
Muss bald off
.AppleTree. is offline  
Thanks
1 User
Old 10/21/2011, 22:56   #10
 
elite*gold: 35
Join Date: Apr 2011
Posts: 800
Received Thanks: 214
mein Fehler
aber das hat noch probleme^^
.AppleTree. is offline  
Old 10/21/2011, 23:03   #11

 
elite*gold: 808
Join Date: Jul 2010
Posts: 7,984
Received Thanks: 1,652
Danke Dir vielmals. Zweite seite bis eben nicht entdeckt und war selbst noch am Umschreiben einiger Dinge.

Vielen lieben Dank.
°"Crazy"° is offline  
Old 10/21/2011, 23:04   #12
 
elite*gold: 35
Join Date: Apr 2011
Posts: 800
Received Thanks: 214
du hast den Fehler nicht gesehen weil ich gefailt hab, habs geeditet
€:Bin off ihr schafft das schon
.AppleTree. is offline  
Old 10/22/2011, 14:47   #13
 
elite*gold: 0
Join Date: Aug 2011
Posts: 134
Received Thanks: 148
$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."

If $ver_old = $ver_new Then
$upd_nn
EndIf
If $ver_old = $ver_new Then
$upd_nwd
EndIf

nicht

$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."

If $ver_old >= $ver_new Then
$upd_nn
ElseIf $ver_old > $ver_new Then
$upd_nwd
EndIf
Emo! is offline  
Old 10/22/2011, 15:10   #14
 
omer36's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
Quote:
Originally Posted by Emo! View Post
$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."

If $ver_old = $ver_new Then
$upd_nn
EndIf
If $ver_old = $ver_new Then
$upd_nwd
EndIf

nicht

$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."

If $ver_old >= $ver_new Then
$upd_nn
ElseIf $ver_old > $ver_new Then
$upd_nwd
EndIf
nichts gegen dich, aber bitte antworte nie auf fragen anderer, wenns um programmieren/scripten geht.
omer36 is offline  
Old 10/22/2011, 15:21   #15

 
elite*gold: 808
Join Date: Jul 2010
Posts: 7,984
Received Thanks: 1,652
Quote:
Originally Posted by Emo! View Post
$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."

If $ver_old = $ver_new Then
$upd_nn
EndIf
If $ver_old = $ver_new Then
$upd_nwd
EndIf

nicht

$upd_nn = "Ihre Core ist auf dem aktuellsten Stand."
$upd_nwd = "Bitte updaten Sie Ihre Core."

If $ver_old >= $ver_new Then
$upd_nn
ElseIf $ver_old > $ver_new Then
$upd_nwd
EndIf
Bitte überdenke deinen Fehler. Die Vorposter haben aber meine Frage schon beantwortet.
°"Crazy"° is offline  
Reply


Similar Threads Similar Threads
Hilfe beim Angezeigtem Zahlen Vergleich in AutoIT
06/11/2011 - AutoIt - 1 Replies
Hallo ich habe vor kurzem Angefangen in AutoIt zu Skripten und suche nach einer Lösung um ein angezeigten Bildschirmtext/Zahl in ein wert auszulesen. So Ähnlich wie Captcha. Nun habe ich rausgefunden das man mit ImageSearch Bilder Vergleichen kann. Die Anzeige ist hierbei ein Splashscreen eines PG´s mit der Anzeige eines Textes und einer Zahl die verglichen werden soll und entspricht das Bild der Zahl dann soll er was Tun z.b. send Taste. Bitte um Code Schnipsel :handsdown: und wo...
Brauche Hilfe beim Vergleich...
05/04/2011 - Technical Support - 9 Replies
Hey, ich bins nochma, da meine Grafikkarte GTX560Ti OC einen anderen Chipsatz hat, als mein Asus M4A89GTD wollte ich mal Fragen ob das ASRock Deluxe4 ein wirklich gutes Mainboard ist? und zu meinen Teilen passt: //EDIT: Prozessor: GTX 560Ti OChttp://img638.imageshack.us/img638/7451/pc33004. jpg Und jetzt zur eigentlichen Frage: Welches Mainboard ist besser als das ASRock Deluxe4 bei einem Maximum von 120€ +/-? (könntet ihr das in einem Vergleich aufstellen? MFG und VIELEN DANK
[Problem]locale_de Problem - Datei fehlt beim packen
04/12/2011 - Metin2 Private Server - 7 Replies
Werte e*PvP Community, Ich brauche eure Hilfe. Und zwar hab ich ein Problem, das behoben werden muss. Das Problem liegt bei der locale_de, die ich wieder packen möchte. Ich nutze hierfür den File Archiver von tim. Nun zurück zum Thema. Wenn ich die Datei via "Ausführen -> cmd -> cd C:\FA -> m2 locale_dePack.xml" anwende, kommt eine Fehlermeldung, das eine Datei fehlt. Und zwar ist es die "gm.mse" Das kuriose daran ist, das die Datei im Source-Ordner da wo es sein muss auch liegt.
[NEED HELP] Problem beim Einloggen beim Hamachi-Server
02/27/2010 - Metin2 Private Server - 11 Replies
Hi Leute, ein Freund und ich haben uns mal gedacht, dass man sich so aus Spaß einen eigenen kleinen Pserver machen könnte. So nur für uns beide über Hamachi. So, dann ahben wir nach 3h den Server endlich online gekriegt, sodass alles funktionierte mit GM-Rechten etc. Die MC.txt haben wir auch alles gemacht alles funktioniert. Ich konnte mich sogar einloggen und ich komme auch zur Charakterauswahl. Dort angekommen, wähle ich dann den Char aus & kriege dann aber einen Kick. Das ist jedes Mal das...
Variabeln addieren
08/08/2009 - AutoIt - 13 Replies
hai leuts hab hier ein kleines prog in arbeit. ist zwar kein bot aber es soll eine überraschung für mein grossvater werden. er liebt es ein schweizer kartenspiel names "jasse" zu spielen und dieses programm soll für ihn rechnen und schreiben. nun zu meinem problem: ich mächte auf der linken seite bei punkte eine zahl ein geben können welche es danach zur gesammtpunktzahl addiert, komishcer weise stimmen die zahlen jedoch nicht wenn ich 10 eingebe und auf den button schreiben drücke...



All times are GMT +1. The time now is 17:59.


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.