Problem mit Vergleich

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von FuFu^^.

    Problem mit Vergleich

    Guten Tag,


    Ich hab eine Art Updater gemacht nur habe ich dabei Folgendes Problem:
    Es gibt 2 Labels in einem Steht die Aktuelle Programmversion im 2. die Version mit der Verglichen werden soll (Das 2. Label bekommt seinen Wert mit Donwloadstring --> es werden 2 Strings Verglichen)
    Das Problem ist das Programm erkennt z.B. 3.5.0 und 3.5.0 als Ungleich ich hatte auch schon mal alles mit Integers Probiert aber da kam es zum selben Problem das Programm scheint zu glauben 12 ist größer als 12

    Mein Code sieht so aus:

    VB.NET-Quellcode

    1. Dim Neu As String = wc.DownloadString("http://downloadsvr.kilu.at/Up.txt").ToString
    2. lblNeu.Text = Neu.ToString
    3. If lblNeu.Text.ToString = lblAktuell.Text.ToString Then
    4. lblStatus.ForeColor = Color.Lime
    5. lblStatus.Text = "Aktuell"
    6. Button1.Enabled = False
    7. ElseIf Not lblNeu.Text.ToString = lblAktuell.Text.ToString Then
    8. lblStatus.Text = "Alte Version"
    9. lblStatus.ForeColor = Color.Red
    10. Button1.Enabled = True
    11. End If


    Ich bitte um mögliche Hilfe.

    Mit freundlichen Grüßen



    The Dark

    VB.NET-Quellcode

    1. wc.DownloadString("http://downloadsvr.kilu.at/Up.txt").ToString
    wc ist ein webclient? die DownloadString-methode des webcients liefert bereits einen string. das .ToString ist unsinn.

    VB.NET-Quellcode

    1. lblNeu.Text = Neu.ToString
    neu wurde bereits als string deklariert und enthält nichts anderes als einen string. eine konvertierung ist unnötig.

    numerische vergleichsoperatoren lassen sich nicht auf strings anwenden. wenn ziffer für ziffer in der version überprüft werden soll musst du vorher mit CInt(String) die strings in integers casten und kannst dann vergleichen. evtl. gibts auch eine vorgefertige lösung im framework für versionsnummern, die habe ich jedoch noch nicht verwendet.






    EDIT:
    hier ist die lösung des nummern-problems: xtremedotnettalk.com/showthread.php?t=81266