Code: Alles auswählen
!UD2dz! bewirkt, dass der leser sich kritisiert fühlt, so ähnlich wie "ts ts ts"...Volker Schmid hat geschrieben:@Kaeru...: Was bewirkt dz!...
Joa, hast ja recht bin aber etwas mundfaul gerade. Im Prinzip ist die Verwendung der OnError() Lib eigentlich das beste was man machen kann da man volle Kontrolle über den weiteren Verlauf des Programms nach Auftreten eines Fehlers hat. Normalerweise kann mit den Befehlen OnErrorExit(), OnErrorGosub(), OnErrorGoto() und OnErrorResume() bestimmen was bei einem echten / unerwarteten Fehler passiert.Kaeru Gaman hat geschrieben:auch du brichst dir keinen Zacken aus der Krone, wenn du etwas ausführlicher wirst.
Code: Alles auswählen
Procedure ErrorHandler()
MessageRequester("","Error "+Str(GetErrorNumber()))
End
EndProcedure
OnErrorGosub(@ErrorHandler())
SetErrorNumber(54)Würd' nicht schaden. Kann aber auch in Spam ausarten....vielleicht sollten wir die mindestlänge von Postings mal auf 120 Zeichen erhöhen?

Code: Alles auswählen
Procedure Error()
MessageRequester("","")
;!UD2
EndProcedure
Procedure Check()
Protected ErrorHandler ;Muss als !erste! lokale Variable definiert werden
ErrorHandler = @Error()
If #True
!SUB Esp, 4
EndIf
EndProcedure
Check()
Naja nicht unbedingt in Zusammenhang mit Zeichenketten, auch mit Daten. Hab das grad mal getestet und die PureBasic-Prozeduren scheinen doch sicher dagegen zu sein. Macht aber nix, auf die Win-API ist verlass.Volker Schmid hat geschrieben: @Thorium: Bei !std kommt es zum Absturz, wenn das nächste mal eine Stringoperation ausgeführt wird? Also sowas wie zB A.s = B.s + C.s?
Code: Alles auswählen
EnableExplicit
Define.s Test
!std
Test = "muh"
MessageRequester("Test",Test)
