.NET-DLL in VB6 nutzen --> Welche Rückgabewerte-Typen möglich? Wie Fehlerbehandlung managen?

  • Allgemein

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von GambaJo.

    .NET-DLL in VB6 nutzen --> Welche Rückgabewerte-Typen möglich? Wie Fehlerbehandlung managen?

    Ich bin gerade dabei eine .NET-DLL zu erstellen, die man sowohl in einer .NET- wie auch in einer VB6-Anwendung nutzen soll.

    Das Grundgerüst für die DLL habe ich bereits fertig, kann sie also von VB6 aus sehen und nutzen.
    Nun muss ich zunächst mal wissen, welche Rückgabetypen ich in der DLL verwenden kann, die auch VB6 versteht. Ich meine, ich habe mal gelesen, dass alle primitiven Typen, Arrays mit primitiven Typen, Collections und selbst definierte Typen mit einem entsprechenden COM-Interface in der DLL nutzbar sind. Aber gehen auch z.B. RecordSets? Ich finde die Info aber nicht mehr im Netz.
    Kann mir da jemand aushelfen?

    Außerdem suche ich eine saubere Methode der Fehlerbehandlung. In der DLL würde ich ganz normal Exceptions nutzen. VB6 kennt das allerdings nicht, dort wird ja mit dem Err-Objekt gearbeitet. Wie wird das normalerweise in einem solchen Fall gehandhabt? Muss ich die Exception abfangen und die Info darin in das Err-Objekt umbiegen? Wenn ja, wie?
    Ok, wegen der Fehlerbehandlung bin ich nun etwas schlauer. Man kann in der .NET-DLL einfach eine Exception werfen, und in der VB6-Anwendung ganz normal mit z.B. "On Error GoTo" abfangen. Der Code (Nummer) des Fehlers ist zwar nichtssagend, aber eine Fehler-Nachricht kann man so übermitteln.