![]() |
WAS ist COM??
Also ich Programmiere mit Delphi 7 und soll unserem Makro Interpreter COM-Objekte verfügbar machen.
Hintergrund ist wohl eine Export Schnittstelle. Ich hab soweit in der Delphi Hilfe erkennen können das es hier wohl um Netzwerkweit verfügbare Objekte geht die nach Client-Server-Manier Daten austauschen können.ODER??? Gibt es irgend wo ein tutorial dazu? |
Re: WAS ist COM??
Zitat:
Aber evtl. reicht dir ja fürs erste der ![]() |
Re: WAS ist COM??
Ja es ist eine DCOM Object.
So Wie es aussieht Kann ich es einfach über
Delphi-Quellcode:
Aufrufen.
v := CreateOleObjekt('MeineSchnittstelle');
Gibt es eine Möglichkeit die Methoden über invoke aufzurufen und wenn ja wie sieht sowas aus. Es Wäre nähmlich schön Wenn der c-Interpreter nicht für jedes neue Com object mit neuen Methoden versorgt werden muss. Läst sich das irgendwie über einen Aufruf per name erledigen?? Sprich wie geht Invoke?? |
Re: WAS ist COM??
Zitat:
Zitat:
|
Re: WAS ist COM??
Zitat:
In Unit AxCtrls gibt es:
Delphi-Quellcode:
Mit EnumDispatchProperties holst du dir zuerst eine Liste der Properties.
procedure EnumDispatchProperties(Dispatch: IDispatch; PropType: TGUID; VTCode: Integer; PropList: TStrings);
function GetDispatchPropValue(Disp: IDispatch; DispID: Integer): OleVariant; procedure SetDispatchPropValue(Disp: IDispatch; DispID: Integer; const Value: OleVariant); Die DispId kann man über Integer(Stringlist.Objects[]) abgreifen. Und dann eben mit GetDispatchPropValue oder SetDispatchPropValue arbeiten. Übrigens: Du schreibst "Makro Interpreter". Meinst du damit einen Interpreter, der Scripts in Pascal interpretiert ? Ich frage nur, weil ich einfach VBScript oder JScript in meine Anwendung integriere. Damit ist die dynamische Anbindung von COM/DCOM-Objekten schon erledigt. |
Re: WAS ist COM??
Delphi-Quellcode:
Kannst du mir ein Beispiel Basteln. Ich kann mir nicht unter VT-Code vorstellen.
procedure EnumDispatchProperties(Dispatch: IDispatch; PropType: TGUID; VTCode: Integer; PropList: TStrings);
function GetDispatchPropValue(Disp: IDispatch; DispID: Integer): OleVariant; procedure SetDispatchPropValue(Disp: IDispatch; DispID: Integer; const Value: OleVariant); Auf ähnliche weise mache ich es mit Perl für ActiveDirectory oder WEBEM nur in Delphi hab ich irgend wie keinen Plan wie das läuft. Wir der Anwendung ist ein eigener C interpreter eingebaut der ähnlich wie JAVA aus dem C-Code einen Objekt code Kompiliert und diesen dann an verschiedenen Makroausprüngen in der Anwendung interpretiert. Diese Makros sind verdammt schnell und der Interpreter ist in Pascal geschrieben. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:14 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz