Problem mit Error "Verwaltung"

  • Hey Leutz,

    habe ein Problem mit der Errorverwaltung und kriege einfach nicht raus, was falsch läuft.

    Hier der Code:

    Spoiler anzeigen
    [autoit]


    Func _getProxies()
    Local $IPs = 0
    Local $getURLs = GUICtrlRead($Edit_URLs)
    If $getURLs = 0 Then
    $errorhost = GUICtrlCreateLabel("Keine URLs angegeben", 542, 10, 200, 17, $SS_SUNKEN)
    GUICtrlSetColor($errorhost, 0xff0000)
    Else
    $successhost = GUICtrlCreateLabel("Proxys werden gesucht...", 542, 10, 200, 17, $SS_SUNKEN)
    GUICtrlSetColor($successhost, 0x009900)
    Endif

    [/autoit]

    Wenn ich die Funktion so ausführe, wird immer nur "Keine URLs angegeben" angezeigt, obwohl das Input Feld Adressen enthält und somit eigentlich nicht 0 ausgeben dürfte.

    Hoffe mir kann jemand helfen ;)

    gruß

  • Hallo,

    In dem Ausschnitt den du zeigst, finde ich keinen Fehler.
    Es wäre interessant wie der Rest aussieht oder zumindest wie $Edit_URLs erstellt und definiert wurde und was du genau eingibst.
    Ansonsten probier mal

    [autoit]


    If $getURLs = "" Then

    [/autoit]

    Sorry konnte ich nicht mehr helfen

    greez

    • Offizieller Beitrag

    gigx hat es schon richtig erkannt:

    [autoit]

    If $getURLs = 0 Then

    [/autoit]

    geht nicht.
    Du hast ein Inputfeld, dass du mit einem String fütterst. Wenn es leer ist, ist der Inhalt ("") - ein Leerstring, aber niemals Null.
    Selbst wenn du in das Inputfeld eine Null eingeben würdest, wäre die Bedingung nicht erfüllt, da es eine String-Null wäre und nicht, wie in deiner Abfrage verwendet, eine numerische Null.

    Im Allgemeinen fährst du besser, wenn du die Abfrage invertierst.

    [autoit]

    If $getURLs <> "" Then ; auf das, was nicht sein darf prüfen, aber negativ
    ; alles OK - URL da
    Else
    ; Fehler
    EndIf

    [/autoit]