Hallo,
(A)
Script A ruft Script B über include auf.
Im Script A ist eine Variable nicht deklariert. Also läuft das Script B in einen Fehler:
"Variable used without being declared"
Wie kann ich im Script B den Fehler abfangen, ohne dass das Programm beendet wird und im Fehlerfalle die Variable in Script B belegen?
(im Prinzip der gleiche Grundaufbau wie untenstehendes Script 1 und 2, nur dass in Script 1 Zeile 2 auskommentiert ist.
(B)
Ich verstehe isdeclared nicht.
Script 1
Script 2
AutoIt
Quellcode bearbeiten
Func _test_()
If Not IsDeclared ($test) Then
$test = "Wert in der UDF hinzugefügt, da die Varialbe nicht deklariert ist - not"
MsgBox (0, "", $test)
EndIf
If IsDeclared ($test) = 0 Then ; wenn die Variable nicht deklariert wurde
$test = "Wert in der UDF hinzugefügt, da die Varialbe nicht deklariert ist - 0"
MsgBox (0, "", $test)
EndIf
If IsDeclared ($test) = 1 Then ; wenn die Variable deklariert wurde
$test = "Wert in der UDF hinzugefügt, da die Varialbe deklariert ist - 1"
MsgBox (0, "", $test)
EndIf
If $test = "" Then
$test = "Wert in der UDF hinzugefügt, da die Varialbe beim Aufruf leer war"
MsgBox (0, "", $test)
EndIf
If $test <> "" Then
MsgBox (0, "", $test) ; warum wird der Wert nicht angezeigt?
EndIf
EndFunc
Alles anzeigen
Wo liegt mein Fehler? Wenn eine Variable als global deklariert wurde, sollte sie dann nicht auch als solche in Script 2 als deklariert erkannt werden? Laut Hilfe - ja "Überprüft, ob eine Variable deklariert wurde." ...
Falls das die falsche Syntax sein sollte, welche ist bessser, um festzustellen, ob es die Variable gibt?
Danke