Fehler beim Anzeigen einer weiteren Form

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von VaporiZed.

    Fehler beim Anzeigen einer weiteren Form

    Hallo Zusammen,

    Ich sitze gerade an einem Schulprojekt und hab einen Seltsamen Fehler, den ich nicht ganz verstehe.
    Und da selbst Google und co. mir nicht weiterhelfen, frage ich hier mal nach:

    Ich versuche aus meiner Start-Form eine andere zu öffnen, mit der Zeile "Game.Show()".
    Dabei bekomme ich immer eine Fehlermeldung über eine DragDrop-Registrierung (unten ausführlicher). Dies triff bei allen formen auf, auch bei ganz neuen.

    Quellcode


    Ich hab da mal was mit Drag&Drop versucht, aber meines Wissens nach alles Entfernt. Daher hab ich jetzt keine Ahnung, wo ich nach dem Fahler suchen soll.
    Bei Google hab ich schon ähnliche Berichte gefunden, die lagen aber schon ein paar Jahre zurück und konnte mir nicht helfen.

    Die Fehlermeldung:
    Unbehandelte Ausnahme
    System.InvalidOperationException: "Fehler bei der DragDrop-Registrierung"

    Innere Ausnahme
    ThreadStateException: Für den aktuellen Thread muss der STA-Modus (Single Thread Apartment) festgelegt werden,
    bevor OLE-Aufrufe ausgeführt werden können. Stellen Sie sicher, dass die Hauptfunktion mit STAThreadAttribute gekennzeichnet ist.


    Den Code wollte ich jetzt nicht hier mit reinstellen, der ist fast 300 Zeilen lang und frei von Drag&Drop.

    Grüße Climbtexes
    Poste mal den Code der Methode, welche die Zeile bei der dieser Fehler ausgelöst wird beinhaltet.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    @Climbtexes Fang an mit Option Strict On :!:
    Visual Studio - Empfohlene Einstellungen
    Vorher reden wir hier nicht weiter.
    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!
    Was passiert im Shown Event der Form? Bitte diesen Code auch posten.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen

    Climbtexes schrieb:

    Leider hab ich es anders gelernt (an dieser Stelle danke ich meinen Lehrer dafür)
    Du solltest Deinem Lehrer nicht danken, sondern ihn in den Ar... treten.
    Zeige diesem Lehrer diesen meinen Post.
    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!

    Climbtexes schrieb:

    zeigt Game.Show() nicht die entsprechende Form an
    Doch. Es geht nur darum, dass vielleicht noch zusätzliche Befehle ausgeführt werden, die für das Problem verantwortlich sind.

    Climbtexes schrieb:

    Leider hab ich es anders gelernt (an dieser Stelle danke ich meinen Lehrer dafür)
    Ich gehe mal davon aus, dass der Lehrerzusatz ironisch gemeint war ;)
    Mach mal ne Sicherheitskopie des Projektes und entferne alles bis auf den Game-Form-Aufruf, wie Du ihn in Post#3 gezeigt hast. Allerdings nicht als Function, sondern als Sub. Denn die Methode gibt ja nix zurück. Wenn das immer noch nichts bringt: Kannst Du mal bitte das Projekt ohne bin-, obj-, .vs- und .git-Ordner und gezippt über [+ Erweiterte Antwort] hochladen? Vielleicht finden wir so das Problem und eine Lösung.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Die Option Strict On hat mir einige Fehler aufgezeigt. Als ich alle behoben habe, läuft wieder alles einwandfrei...
    Ich hab keine Ahnung, wie ich das behoben habe aber ich kann wieder weitere Formulare öffnen und denen Variablen übergeben.
    Danke für den Tipp
    Also eine gute und eine schlechte Nachricht, die sich auch im (derzeitigen) Profilbild von @Takafusa wiederfinden: »My code works! But I don't know why …«
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.