COM-DLL verwenden

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

DarkSoul
Beiträge: 2
Registriert: Di, 24.03.2009 11:55

COM-DLL verwenden

Beitrag von DarkSoul »

Hallo,

erstmal zur Vorgeschichte:
Ich sitze hier gerade an dem Problem das wir eine geringfügige Menge an Vorlagen (nicht gezählt, aber definitiv Vierstellig... Ich arbeite in einer öffentlichen Verwaltung, daher die Menge) haben die wir derzeit überarbeiten. Da die Vorlagensammlung über Jahre hinweg gewachsen ist sieht sie natürlich auch entsprechend chaotisch aus. Wir haben jetzt angefangen alles zu überarbeiten bzw. zu aktualisieren. Da wir derzeit noch MSOffice 2003 einsetzen und das interne VBA nicht so komfortabel und umfangreich ist wie wir es hier benötigen haben wir einfach zum Test den Makrocode einer Vorlage komplett in eine DLL ausgelagert und in VB.NET nachprogrammiert. In der Vorlage wird nun nur noch ein Verweis zur DLL angelegt, ein Objekt deklariert und dieses dann zwecks "Füllung" seiner Properties an eine Funktion der DLL übergeben. Nachdem das Objekt die Daten enthält die wir benötigen sorgt VBA lediglich noch für die Einsortierung in entsprechende Formularfelder, Textmarken o.ä. Das funktioniert soweit perfekt.
Ein weiterer Grund für die Auslagerung in eine DLL war das wir nicht wissen was nach Office 2003 kommt. Es kann sein das wir Office 2007 oder auch Open Office bekommen. Eine Entscheidung ist noch nicht 100%ig getroffen. Genauso gut kann es sein das beide Welten eine Weile parallel existieren. Somit wäre die DLL die perfekte Lösung um den Code nur einmal schreiben zu müssen und in mehreren "Welten" parallel zu nutzen. Das Design der Vorlagen lässt sich ja relativ problemlos importieren.

Nun zu meinem Problem:
Wie komme ich unter OOo-Basic (oder von mir aus auch Java) an die Funktionen und Objekte der DLL ran? Sie ist als COM-Objekt im System registriert und unter MSOffice brauche ich ja nur einen Verweis anlegen. Leider schaffe ich es nicht ansatzweise unter OpenOffice auf diese DLL, bzw ihre Klassen und Funktionen zu zu greifen.
Kann mir jemand vielleicht einen Tip geben wie ich vorgehen muß bzw. falls es nur ein paar Zeilen sind wie ein entsprechender Code aussehen müsste? Für Hilfe wäre ich sehr dankbar!!!

Grüße,
Carsten
DarkSoul
Beiträge: 2
Registriert: Di, 24.03.2009 11:55

Re: COM-DLL verwenden

Beitrag von DarkSoul »

Hat niemand einen Tip oder ein Beispiel für mich?
eBayer
******
Beiträge: 556
Registriert: Do, 04.12.2008 14:33
Wohnort: Augsburg

Re: COM-DLL verwenden

Beitrag von eBayer »

Hallo,
ich bin zwar in Deinem Thema nicht zu Hause, aber ich habe da was im internationalen Forum gefunden, was Du Dir mal anschauen solltest.
http://www.oooforum.org/forum/viewtopic ... hlight=dll

Viel Erfolg
eBayer
Intel(R) Core(TM)2 Quad CPU Q8200 @ 2.33GHz mit 4 GB Memory (3,2 GB aktiv)
Vista Home Premium 32 Bit
openOffice 3.1.1 mit Sun Report Builder 1.1.0 und MySql 5.1
Hauptinteresse ooBase seit 12.2008
Antworten