Dll in Entwicklungsumgebung starten

  • VB6

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

    Dll in Entwicklungsumgebung starten

    Hi, hoffentlich bin ich hier richtig.

    Ich habe ein VB6-Projekt als AktiveX-dll vorbereitet, in dem diverse Standard-Funktionen untergebracht sind, die nachher aus einer oder mehreren Access-Anwendungen aufgerufen werden sollen.

    Nun habe ich das Problem, dass ich in der Entwicklungsumgebung das Teil nicht starten kann, um die Funktionen zu testen.

    Die Funktion 'Sub Main' wird beim Starten der Dll nicht aufgerufen (also nicht aus Access raus).

    Wie und wo kann ich einen Startpunkt definieren, an dem ich dann prüfen kann, ob die Dll so gestartet wurde oder aus einer (Access-) Anwendung heraus ?

    Für hilfreiche Beiträge schon mal im Voraus Danke

    Grüße Roger
    Habe mittlerweile eine einfache Lösung gefunden (in Projekt-Eigenschaften auf Standard.exe umstellen). Das ist zwar umständlich, weil dann die Klassen cun Multiuse geändert werden und man beim Kompilieren der DLL diese Kleinigkeit doch immer wieder vergißt.

    Nachdem ich jetzt eine komplexere Funktion (mit vielen Variablen aus der ACCESS-Anwendung) in die DLL ausgelagert habe, ist die obige Vorgehensweise nicht mehr praktikabel.

    Daher habe ich jetzt folgende Problemstellung:

    Start ACCESS --> VB-Funktion aufrufen (mit der Möglichkeit Durchdebuggen zu können). Über MsgBox sind Haltepunkte möglich - ist aber eher äusserst umständlich.

    Wie kann ich also ACCESS und die VB-Funktion (Dll oder Exe oder VBP-Projekt ?) so verknüpfen, dass ein Debuggen möglich ist ?

    Danke für Hilfe
    @MaTiUrTi Vielleicht machst Du Dir ein VB-Test-Programm, das die DLL instanziiert und die Prozeduren aufruft.
    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!