Ich führe derzeit ein Legacy-Visual Basic-Projekt, das diese "procErr:" - Anweisungen überall enthält. Meine Vermutung ist, dass sie als eine Möglichkeit verwendet werden, wenn Fehler während der Ausführung der Funktion aufgetreten sind, ist das korrekt?Was ist procErr: in Visual Basic verwendet?
Ich habe das Projekt in VB.NET konvertiert. Wäre es nicht besser, anstatt diese procErr-Syntax in einen Try-Catch zu integrieren?
Goldene Himbeere: +1 Gute Antwort, aber wenn ich hinzufügen. . . Die Ausnahmebehandlung mit Try Catch kanalisiert unseren Fehlerbehandlungscode in ein bestimmtes Muster. Beachten Sie, dass "VB On Error goto" kein solches Muster hat. Der Error-Handler kann wählen, irgendeine Position in der Methode zu GOTO zu machen, und im Allgemeinen gibt es nichts, was den Coder daran hindert, Logik hinzuzufügen, die in VB3-6 vollkommen vernünftig aussieht, aber in Vb.Net würde Erbrochenes induzieren. Sie müssen jede On Error Goto von Fall zu Fall behandeln. Die Konvertierung von Legacy VB in VB.Net ist keine einfache Sache. Viel Glück Requisiten :) –
@Binary: Du hast natürlich Recht. Sie können nicht einfach jede VB-Fehlerroutine in einen einfachen try-catch konvertieren, da sie sich in Ablauf/Struktur sehr unterscheiden können. Also müssen Sie jedes einzelne von Fall zu Fall untersuchen, ja. Davon abgesehen denke ich, dass Sie nach Möglichkeit die Standard-try-catch-Routine verwenden sollten, wenn Sie in VB.NET konvertieren. Auf der anderen Seite ist es auch nicht sehr schön, jeden On Error Resume Next in einen try {} catch() {} ohne eigentliche Exception-Behandlung zu konvertieren :-) – Razzie