Eure Vorgehensweise beim Entwickeln einer DLL

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von picoflop.

    Eure Vorgehensweise beim Entwickeln einer DLL

    Ich entwickle gerade eine DLL und parallel dazu ein Programm, um die Funktionen der DLL zu testen. Meine Vorgehensweise ist dabei aber extrem frustrierend, da ich scheinbar alles falsch mache, was man falsch machen kann. Ich gehe wie folgend vor: Ich habe 2 Projekte (DLL und Programm), die ich zeitgleich in 2 Instanzen der IDE geöffnet habe. In der "Programm-Instanz" habe ich zusätzlich den Quelltext der DLL geöffnet, damit ich die debuggen kann, was auch meine erste Frage ist: Teilweise funktioniert das debuggen ohne Probleme, dann wieder überhaupt nicht, Breakpoints werden einfach ignoriert. Mach ich etwas falsch?
    Habe ich in der DLL eine MsgBox, die immer angezeigt wird und lösche diese Zeile, erstelle die DLL neu und starte dann mein Programm, welches die DLL nutzt, wird die MsgBox oftmals immer noch angezeigt, obwohl die DLL schon modifiziert wurde. Nachdem ich die DLL dann noch einige Male neu erstellt habe, wird das dann auch übernommmen, meiner Meinung nach sollte dies aber beim ersten Erstellen gehen und nicht erst beim 2. oder 3. Mal.
    Wie geht ihr denn vor, wenn ihr eine DLL erstellen, testen und ein Programm dazu schreiben wollt? Macht ihr das anders als ich?
    Schau dir mal dieses Kapitel an openbook.galileocomputing.de/visual_basic/Kapitel_25-001.htm
    Es zeigt zwar die Erstellungen eigener Steuerelemente, ich meine aber dass mit den dll geht analog.

    EDIT Link aktualisiert
    NB. Es ist doch schön, wenn man lesbare Namen vergibt. Siehe auch [VB.NET] Beispiele für guten und schlechten Code (Stil).

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

    von dusti
    Habe ich in der DLL eine MsgBox, die immer angezeigt wird und lösche diese Zeile, erstelle die DLL neu und starte dann mein Programm, welches die DLL nutzt, wird die MsgBox oftmals immer noch angezeigt, obwohl die DLL schon modifiziert wurde. Nachdem ich die DLL dann noch einige Male neu erstellt habe, wird das dann auch übernommmen, meiner Meinung nach sollte dies aber beim ersten Erstellen gehen und nicht erst beim 2. oder 3. Mal.
    Das ist schon klar das die MsgBox wird immer angezeigt, du hast in der Classe deine Code geändert. Wenn ich in Classe was ändere, kompiliere die Classe neu und danach in Programm neuen Verweis erstellen, vorher den alten Verweis auf der Classe entfernen, dann funz alles genau so wie du das willst.
    hallo dusti,

    das mit den breakpoint hatte mich auch mal zum wahnsinn getrieben.

    das geheimnis dahinter scheint zu sein, dass die kompilierreihenfolge nicht passt.
    lass zuerst die dll kompilieren und dann deine test-form.

    Ich habe 2 Projekte (DLL und Programm), die ich zeitgleich in 2 Instanzen der IDE geöffnet habe.

    ich weiss nicht ob ich dich richtig verstehe.

    wenn ich eine dll schreibe (eigenes control oder irgendwas) dann erstell ich ein neues windowsforms projekt und füge diesem projekt ein
    neues projekt hinzu (datei-> hinzufügen (add) -> neues projekt)
    damit kannst du dann beide projekte in einer instanz der ide entwickeln.

    im zweifel nach einer änderung immer die dll neu kompilieren lassen bevor du das ganze startest.

    gruss

    mikeb69
    @mike69: das ist sehr einfach, hab noch nie schwiriegkeiten gehabt:

    1. Code in Classe ändern
    2. Classe neu kompilieren
    3. in Programm den alten Verweis aud die DLL enfernen
    4. Neuen Verweis auf die neu kompilierte DLL erstellen
    5. Funktionen aus der Classe aufrufen
    hallo alex2000,

    aber jedesmal den verwes entfernen und wieder setzen ist auch nervig.

    @dusti,
    hab vergessen zu bemerken, dass ich den zielort der dll (kompilieren) meist in das debug verzeichnis der exe setze.

    gruss

    mikeb69

    Alex2000 schrieb:

    3. in Programm den alten Verweis aud die DLL enfernen
    4. Neuen Verweis auf die neu kompilierte DLL erstellen


    Also das geht ja gar nicht. Bei jeder noch so kleinen Änderung den Verweis löschen und neu hinzufügen? Dafür brauche ich ja länger als für die Änderungen am Projekt.
    @Mikeb69: Ich werd mal versuchen, dem Programm die DLL direkt als "Unterprojekt" hinzuzufügen, mal sehen wie ich damit klarkomme. Danke für die Anregung.
    @dusti: wer sag das dass nicht geht ! :D Du änderst nur in Prozeduren/Funktionen kleinigkeit, aber Classen Name bleibt immer gleich. Drei klicks machen und neuen Verweis erstellen, damit die änderungen in Classe wirksam werden ist doch kein riesen Arbeit ! In VB 6 ist das gleiche kake, wenn was änderst muß nue kompilieren und noch ein mal den Verweis erstellen. Na ja du wirst schon raus kriegen ! :D :thumbup: