Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Eigene Schnittstelle (https://www.delphipraxis.net/57095-eigene-schnittstelle.html)

bioser 15. Nov 2005 18:30


Eigene Schnittstelle
 
Hallo,

hat jemand eine Idee, wie man eine eigene Schnittstelle implementiert ?
Ich möchte, daß außerhalb der Zugriff auf Methoden meines Programms möglich ist.
Stichwort genügt auch erstmal, damit ich mich damit beschäftigen kann.
Danke !

Gruss
bioser

sh17 15. Nov 2005 18:35

Re: Eigene Schnittstelle
 
Du meinst also eine DLL, über die auf Dein Programm zugegriffen wird?

bioser 15. Nov 2005 18:42

Re: Eigene Schnittstelle
 
Gibt es noch was anderes ?

sh17 15. Nov 2005 18:50

Re: Eigene Schnittstelle
 
Pascal-Script
COM-Objekt / ActiveX
wenns nicht al zu viele Methoden sind, über Start-Parameter
oder Du lieferst die Quellen/DCUs Deiner Objekte aus

phXql 15. Nov 2005 18:50

Re: Eigene Schnittstelle
 
Zitat:

Zitat von bioser
Gibt es noch was anderes ?

ja, XML-RPC/SOAP, Packages.. gibt viele möglichkeiten, fraglich nur, ob du die benutzen willst ;)

bioser 16. Nov 2005 14:36

Re: Eigene Schnittstelle
 
Mit welcher Schnittstelle kann man denn am besten arbeiten ?

DGL-luke 16. Nov 2005 15:48

Re: Eigene Schnittstelle
 
was genau willst du denn für einen zugriff nach aussen? echtzeit-kommunikation mit anderen prozessen? nur initialen datenaustausch? Schnittstelle in andere Netzwerke?

Was sich für alles eignet, ist auf jeden Fall ein DLL-PlugIn-System:

Delphi-Quellcode:
type TDLLFunction = function(varID: Integer):Pointer;

procedure RegisterDLL(fetchfunc: TDLLFunction, name: string);
var mHandle,InitProcAddr: hwnd;
begin
mHandle := GetModuleHandle(name); //ich weiss grad nicht, wie genau die params aussehen müssen...

InitprocAddr := GetProcAddress('Init');

InitprocAddr(@fetchfunc);
end;
So kann eine DLL bereits alle Variablen aus dem Hauptmodul beziehen, indem sie die übergebene TDLLFunction mit einer vorher (z.B. in einem SDK) festgelegten ID aufruft und als Rückgabewert die Adresse dieser Variable bekommt.

In der DLL kann der Programmierer dann mit der Variable machen, was er will - also alles, was ich oben sagte.

Dass man mit einer DLL "am besten arbeiten" kann, will ich so nicht sagen - es kommt immer auf Einsatzgebiet an.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz