Problem mit Hinweise zur Fehlerbehebung-Fenster

  • VB.NET

Es gibt 32 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Problem mit Hinweise zur Fehlerbehebung-Fenster

    Das nette hilfreiche Fenster, wenn ein Fehler beim debuggen entsteht, erscheint bei mir nicht.

    0.tqn.com/d/visualbasic/1/0/2/U/10LVBE_L3_04.gif

    Ich meine das Bild

    Das Programm, was debuggt wurde, wird auch nicht einfach so beendet sondern läuft komischerweise OHNE einer TRy-catch Anweisung weiter...

    Wie kriege ich das hin, dass ich das Fenster bekomme und das er dann das Programm beendet ?

    Edit by nikeee13: Thread aus dem Hauptforum hierher verschoben.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „nikeee13“ ()

    Willkommen im Forum. :thumbup:
    1. Sieh mal alle Menüpunkte des Studios durch (auch während des Debuggens), da gibt es eine Reihe von Punkten, wo weitere Fenster geöffnet werden können.
    2.

    DerHans117 schrieb:

    Das Programm, was debuggt wurde, wird auch nicht einfach so beendet sondern läuft komischerweise OHNE einer TRy-catch Anweisung weiter...
    Kannst Du mal bitte davon den Code posten?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    So, ich habe jetzt mal einen Screenshot gemacht:
    s14.directupload.net/file/d/2984/4jyxn878_jpg.htm

    Zusehen ist ein klassischer Objektverweis-Fehler. Normalerweise müsste sich nun das "Fenster "Hinweise zur Fehlerbehebung" aufkreuzen. Tut es aber nicht. Es wird bei größeren Codes auch nicht markiert, wo der Fehler ist. Lediglich nur im Direct-Fenster...

    Ich habe Visual Basic 2010 Express auch ganz normal installiert (gestern) und ich habe keine Einstellungsveränderungen vorgenommen. Ich habe es auch mehrfach dinstalliert und neu installiert - Kein Erfolg. Ich bin jetzt seit der 2005er Version dabei und hatte noch nie so ein Problem, obwohl ich die Visual Basic Express Reihe schon öfters auf anderen Laptops von mir installiert.

    Es wäre dankbar, wenn ihr das Problem lösen könnt. Ich verzweifle schon, ob es an meinen neuen Laptop liegt.

    picoflop schrieb:

    Da ist keines!
    dooooch :D :D :D


    @DerHans117: 1. Pack den Code in eine Button_Click-Routine und Du wirst sehen.

    Aber jetzt bitte nicht mich hauen und so weil die erste_Codezeile.EndsWith("FF")

    @DerHans117: 2. Option Strict On im aktuellen Projekt:
    Projekt -> Eigenschaften -> Kompilieren


    und für alle zukünftigen Projekte
    Studio -> Extras -> Optionen
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „RodFromGermany“ ()

    Okay, nun ja das hat nichts mit x64 zu tun. Ich habe auf einen anderen Laptop auch 64er. Dort habe ich aber die Professionel-Test-Version drauf und da kommt auch das Hinweis zur Fehlerbehebung-Fenster...

    Naja, die Lösung ist ja gut und schön..Aber bei mir war das eigentlich immer so, dass er beim Kompilieren Probleme macht (weil das schon seit der 2005er Version so ist und mich daran gewöhnt habe)...Und das will ich ja eigentlich...Genau das. Nichts anderes :D Und ich frage mich die ganze Zeit was ich falsch gemacht habe


    Genau das will ich. Das er mir beim Kompilieren/Debuggen anzeigt, wo genau der Fehler ist...
    Das Array (die Prozesse) hat keine Einträge.
    Mach mal das ".exe" in Deiner Textbox raus.

    VB.NET-Quellcode

    1. Dim pr() = Process.GetProcessesByName("Notepad")
    2. If pr.Length > 0 Then
    3. pr(0).Kill()
    4. End If
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Danke dir picoflop. Ich habe deinen Thread mir mal durchgelesen. Im Grunde genommen ist das ja kein Bug, einfach nur von Microsoft kleine Spielereien. Soo der Hotfix funktioniert nicht bei mir, da ich angeblich nicht das richtige System habe. Naja, es ist wohl nicht immer so. Auf einem anderem Laptop auf der auch ein 64er Betriebssystem installiert ist und zudem die Professionel installiert ist, geht das alles komischerweise. Und du meintest, man müsse auf das Service Pack 1 warten...Nun ja, bei dem Einrichten des Laptops hat er angezeigt, dass das schon alles mit drauf ist...Anscheinend habe ich wohl die Ar...karte gezogen und muss mein altes Netbook mit meinem geliebten Win XP wieder start klar machen, dann kann ich wohl mein neuen Laptop in die Ecke stellen und es verstauben lassen... *heul* :(

    Und RodvonGermany:
    Das war nur ein Beispiel aus dem Netz....Einfach den Link kopiert und eingefügt...Stammt also nicht von mir... ;)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „DerHans117“ ()

    DerHans117 schrieb:

    Anscheinend habe ich wohl die Ar...karte gezogen und muss mein altes Netbook mit meinem geliebten Win XP wieder start klar machen

    ????

    Regel 1: Form_Load nur verwenden, wenn UNBEDINGT nötig
    Regel 2: WENN Form_Load dann einfach dort Invoke(andere Methode), oder halt Code der NIE ne Ex werfen kann (gibbet kaum)

    so stehts auch im erwähnten Thread.
    .NET ist halt objektorientiert, der Compiler weiß nicht, ob und wenn ja in welcher Reihenfolge Operationen mit einem Objekt ausgeführt werden.
    Folglich wird zwischen Compilerfehlern und Laufzeitfehlern unterschieden.
    Hast Du übrigens eine Vorstellung, mit welchem Aufwand mit statischen Methoden zur Entwicklungszeit Fehler gesucht werden?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Nein, leider nicht. Dazu kenne ich mich gut genug aus. Ich habe mir das auch alles selber beigebracht. Am Anfang (vor etwa 5 Jahren) hatte ich bei jeder Kleinigkeit ein Problem. Heutzutage kann ich eigentlich fast alle Fehler selber lösen...Weil das eigentlich immer der gleiche "Shit" ist...für mich zumindest...

    Sooo...Ich hatte gerade die Idee, das man den Code jetzt immer mit der Try-Catch-Methode überprüft. Denn da kommt eine Fehlermeldung.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „DerHans117“ ()

    DerHans117 schrieb:

    Ich verstehe das immer noch nicht mit den Form_Load
    Führe diesen Code aus (Form mit einem Button):

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    3. Dim i As Integer = 8
    4. Dim j As Integer = 0
    5. Dim k As Integer = CInt(i / j)
    6. End Sub
    7. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    8. Dim i As Integer = 8
    9. Dim j As Integer = 0
    10. Dim k As Integer = CInt(i / j)
    11. End Sub
    12. End Class
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Das war ja nur ein Beispiel. Mein Problem ist halt, wenn ich einen etwas längeren Code geschrieben habe und der sich NICHT in Form_Load Sub befindet, sondern irgendwo anders, und wenn ich dann einen Fehler mache, dass das Programm dann nicht stoppt...Das ist das Problem...Ich will das es ja stoppt...Damit ich den Fehler auch finde...Ich glaube, ich kann das schlecht verständlich machen...
    Hast Du eine Release-Version am laufen?
    Was hast Du für ein Studio (Ultimate oder so)?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!