MyBase.New, InitializeComponent, m_vb6FormDefInstance

  • VB.NET

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

    MyBase.New, InitializeComponent, m_vb6FormDefInstance

    Hi,

    diese Sub macht mir nur Fragezeichen und liefert auch eine Fehlermeldung, ich schätze mal das ist auch ein Relikt aus vergangenen Tagen? Die Dll, die nicht gefunden wird liegt im selben Ordner wie die anderen Dlls und ist auch in den Verweisen hinterlegt.
    Die Sub einfach weglassen scheint keine Probleme zu bereiten, trotzdem wüsste ich gerne was ich da weglasse.

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Sub New()
    2. MyBase.New()
    3. If m_vb6FormDefInstance Is Nothing Then
    4. If m_InitializingDefInstance Then
    5. m_vb6FormDefInstance = Me
    6. Else
    7. Try
    8. If System.Reflection.Assembly.GetExecutingAssembly.EntryPoint.DeclaringType Is Me.GetType Then
    9. m_vb6FormDefInstance = Me
    10. End If
    11. Catch
    12. End Try
    13. End If
    14. End If
    15. InitializeComponent()
    16. End Sub


    Fehlermeldung bei InitializeComponent: System.IO.FileNotFoundException: "Die Datei oder Assembly "Interop.DXFREADER2lib, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null" oder
    eine Abhängigkeit davon wurde nicht gefunden. Das System kann die angegebene Datei nicht finden."



    Viele Grüße
    @Haudruferzappeltnoch Was hat dieser Code mit irgend einer DLL zu tun?
    Bei mir läuft er da durch ohne Fehler.
    Was ganz genau soll dieser Code machen?
    ====
    Wann und wo wird m_InitializingDefInstance belegt?


    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!
    Riecht für mich nach Doppelausführungsschutz. Ist dieser Code Teil einer DLL oder eines WinForms-Projekts? Wenn letzteres, dann ggf. in den Projekteinstellungen bei Anwendung die Option [X] Einzelinstanzanwendung erstellen, um den gewünschten Effekt zu erreichen - vorausgesetzt mein Geruchssinn aus Satz 1 hat mich nicht im Stich gelassen …
    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.
    @VaporiZed OK, da kenn ich mich in VB6 nicht aus.
    @Haudruferzappeltnoch Wenn das das sein sollte, lass den Code weg und mach in den Projekteigenschaften diesen Haken:
    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!
    Nee, nix mit VB6. Try-Catch, MyBase.New und InitializeComponent() sind doch alle VB.NET
    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.
    Ich meinte das Konstrukt, das ggf. von einem Konverter da übernommen wurde.
    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!
    Naja, wie gesagt, es riecht ein wenig danach. Ob das wirklich so ist oder inwieweit das so überhaupt in der Richtung funktioniert, kann ich aber nicht nachvollziehen. Sieht nach Eigenbau aus. Und wenn es sowas ist, man aber was aus dem Framework nehmen kann, was den gleichen Zweck erfüllt, würde ich immer zur Frameworkvariante greifen.
    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.

    Haudruferzappeltnoch schrieb:

    Es geht darum, dass die Anwendung nicht mehrfach gestartet sein kann oder?
    Was der Originalcode macht, können wir nur mutmaßen.
    Wenn sich die Mutmaßung bestätigt, ist die Lösung per Haken im Projekt immer die bessere, Du kannst sie auch mit einem einzigen Klick wieder rausnehmen.
    Wenn es doch was anderes sein sollte, müsstest Du das erst mal aufklären.
    Woher kommt dieser Code eigentlich?
    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!
    @Haudruferzappeltnoch Kannst Du den noch mal fragen?
    Ansonsten wäre das Projekt selbst interessant, zumindest die Teile, wo diese Variablen deklariert und verwendet 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!