Also ich würde die Aufgabenstellung nochmal im Kern durchdenken.
Wie immer ist die Trennung zwischen
Datentransport und
Datenaufbereitung sehr wichtig.
Wieviele Arten des Datentransports sind denn denkbar?
*
FTP / Secure
FTP (verschiedene Clients vorsehen)
* Zugriff auf Datei, lokal oder im Netzwerk
* HTTP(s); also Download einer Resource von einem Webserver mit der GET Methode
* externes Exe-Programm, das die Daten holt
* externes VB- oder Java-Script das die Daten holt
Datenaufbereitung bedeutet dass die Daten in einen Konverter gehen und am Ende kommt das gemeinsame
XML-Format raus.
Nur diesen Konverter würde ich als Plugin sehen.
Der verschiedenen Arten des Datentransports sollten dagegen fest im Hauptprogramm liegen (natürlich parametrisiert).
Das Plugin könnte man als
ActiveX-
DLL implementieren.
Delphi-Quellcode:
IConverterPlugin = Interface
procedure SetParameter(name:WideString; value:OleVariant);
procedure Convert(instream, outstream : IStream);safecall;
function GetVersion:Widestring;safecall;
end;