Forum: Win32/Win64 API (native code)
Delphi
by himitsu,
21. Okt 2009
bitte bitte
und praktisch genauso, wie es jetzt mit den Stream ging,
macht man es jetzt mit den anderen Interfaces für Plugin und App
(nur daß man hier leicht direkt von TInterfacedObject erben kann und dann die Basis-Interface-Funktionen schon fertig hat)
also der Zugriff dann von außen immer nur über das jeweilige Interface
Forum: Win32/Win64 API (native code)
Delphi
by himitsu,
21. Okt 2009
drum sagte ich ja, daß man diese eventuell noch implementieren muß
(hatte es vorhin nur nicht gemacht, da ich alles Vorhandene erstmal nur zusammenkopiert hatte und nichts direkt "neu" schrieb)
type
IDelphiStreamIntern = interface
{private}
function GetPosition: Int64;
procedure SetPosition(const Pos: Int64);
procedure SetSize64(const NewSize: Int64);
function...
Forum: Win32/Win64 API (native code)
Delphi
by himitsu,
21. Okt 2009
wie gesagt, es ist ein Interface und das ist was "ganz" anderes, wie ein Objekt.
man kommt auch nicht so leicht auf das Objekt zurück (eigentlich garnicht), da nach außen egal ist, was hinter dem Interface steckt ... es ist halt nur eine Schnittstelle zu irgendwas anderem.
procedure TApp.AddStream(aStream: IDelphiStream); stdcall;
begin
astream.position:=0;
...
Forum: Win32/Win64 API (native code)
Delphi
by himitsu,
21. Okt 2009
die dort schon eingetragenen Funktionen sind schon im MemoryStream vorhanden,
aber ich glaub du hast Recht, da diese Getter/Setter ja als Private nicht zur Verfügung stehn :(
aber du brauchst ja auch nur das implementieren, welches man am Ende auch benutzt
(hab hier einfach mal "alle" nötigen Standardfunktionen kopiert)
nja, schön wäre es, wenn man von 2 Objekten erben könne...
Forum: Win32/Win64 API (native code)
Delphi
by himitsu,
21. Okt 2009
IHost = interface;
alle Funktionen/Ereignisse, welcher ein Plugin im Hauptprogramm aufrufen muß
THost = class(TObject, IHost);
das interne Objekt der Anwendung
IPlugin = interface;
die Schnittstelle zum Plugin, welche jedes Plugin implementiert
hier sind die Funktionen drinnen, welche die Anwendung im Plugin aufrufen muß/kann