Client für COM (component object model)

Antworten
am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

Client für COM (component object model)

Beitrag von am2 »

Hi,

hat irgend jemand einen Tip (gern auch link), wie ich mittels Lazarus mit einen COM- Server- spielen kann?
Ich hab mir schon einen Wolf gesucht, aber immer nur entweder keinen Link oder Tausende gefunden (die dann aber irgendwie alle nicht passten, sondern Componenten, Objekte oder Modelle einzeln abgearbeitet haben)

vielen Dank

am2

braunbär
Beiträge: 369
Registriert: Do 8. Jun 2017, 18:21
OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10, FPC 3.2.0
CPU-Target: 64Bit
Wohnort: Wien

Re: Client für COM (component object model)

Beitrag von braunbär »

Was möchtest du konkret machen?

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Client für COM (component object model)

Beitrag von af0815 »

Welchen Com-Server hast du da speziell im AUge. Da gibt es unterschiedliche Typen.

Am besten mit einem Code ddan man auch nachvollziehen kann, bzw. testen kann, wo es harkt.

Ich suche das auch nach "kosch com-server" . Dabei ist Hr. Kosch ein Author für sehr gute Bücher unter Delphi und hat auch sehr viel an Information zu Com und Com+ publiziert. Ich habe da ein paar Laufmeter an Lektüre im Schrank stehen :-)
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

Re: Client für COM (component object model)

Beitrag von am2 »

Ich fürchte, je konkreter ich werde, desto weniger kann ich mit Antwort rechnen :(

Ich möchte gern die OKSTRA- Klassenbibliothek anbinden, die wohl auch als COM- Server existiert.

http://www.okstra.de/

Bin für jeden Tip dankbar!

AM

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Client für COM (component object model)

Beitrag von af0815 »

Lt. den Dokus haben die zwar C++ verwendet, aber auch Schnittstellen zu C. Diese sind meiner Meinung nach einfacher zu handhaben als das ganze über COM ab zu wickeln, das seinerseits ja wieder nur ein Wrapper für C++ ist. Siehe auch Okstra Handbuch Bild Seite 12 bzw. Kapitel 1.3.4. Kapitel 2.1.3 erklärt das mal ein wenig.

Da suchst du am besten unter C zu Pascalportierung. Wenn du die dll und die Header einmal hast, kannst du direkt versuchen die Basics mal zu portieren. H2Pas kann da dein Freund (oder Feind :-) ) werden.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

Re: Client für COM (component object model)

Beitrag von am2 »

Vielen Dank für die schnelle Antwort und die Aussicht auf das Licht am Ende des Tunnels.
Aber im Moment kann ich mir das leider nicht wirklich vorstellen. Hast Du mal irgendeinen Code- Schnipsel (oder pseudo) im Angebot?

Meinst Du irgendwie so etwas?
http://www.lazarusforum.de/viewtopic.php?t=6073

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Client für COM (component object model)

Beitrag von af0815 »

am2 hat geschrieben:Meinst Du irgendwie so etwas?
http://www.lazarusforum.de/viewtopic.php?t=6073


Ja

Zum Einstieg (der ist am Anfang nicht leicht)
https://wiki.freepascal.org/DLL_dynamically_load/de
https://wiki.freepascal.org/Lazarus/FPC_Libraries

Das einfachste Beispiel ist für mich die fpcsrc\packages\sqlite\src\sqlite3dyn.pp mit der sqlite3.inc. Da wird die SQlite3 dll eingebunden. Die Unit ist relaiv gut zu lesen. Schau dir nur mal den implemantationteil an und dort nur das was mit LOAD_DYNAMICALLY versehen ist. Da gibt es Initialisation und ein Release. Der Rest ist so ziemlich nur Pointerzuweisung.


https://wiki.freepascal.org/Creating_bi ... _libraries
https://wiki.freepascal.org/Common_prob ... ader_files
https://wiki.freepascal.org/H2Paswizard

Der H2Pas ist ein störrisches Biest, hilft dir aber ein wenig. Das meiste ist händisch zu machen.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

Re: Client für COM (component object model)

Beitrag von am2 »

Super, vielen Dank, ich denke, als Einstieg wird mir das auf alle Fälle helfen!
Das schau ich mir mal bei Gelegenheit an :)

(ps: Ich komme leider nur noch gelegentlich zum Programmieren, daher kann es eine Weile dauern)

Antworten