Hallo!
Zitat von
tommie-lie:
Stehen dem Plugin alle Informationen (Editor) zur Verfügung?
Der unten stehende Quelltext läßt mich das vermuten!
Delphi-Quellcode:
type
TApp = class(TInterfacedObject, IApp)
private
FEditor: IEditor;
public
constructor Create;
... //Rest zum Verständnis hier nicht relevant
end;
constructor TApp.Create;
begin
inherited Create;
FEditor := TEditorAdapter.Create(Form1.SynEdit); //SynEdit ist nun der konkrete Editor
//der wird aber an das Interface zugewiesen
end;
Die nächste Frage gehört zwar streng genommen in einen eigenen Thread, aber da sie inhaltlich zu meinem aktuellen Problem gehört (
Dll für Plugin mittels Interface), stelle ich sie dennoch gleich hier, in der Hoffnung, das es darauf eine einfache Antwort gibt. (geeigneter externer Debugger o.ä.)
Zitat von
tommie-lie:
Hast du schon versucht die
DLL zu debuggen?
Definitiv Nein. Wie mache ich das? Die
Dll ist unter Delphi ein eigenes Projekt. In D7 Ent. Trial gab es, glaub ich eine Funktion "Mit Prozess verbinden..." Nützt mir aber nix, da ich nur D7 Personal habe und da fehlt diese Funktion.
Da ich das vorliegende Problem ja, hoffe ich zumindest, irgendwann gelöst haben werde, ergeben sich für mich folgende Überlegungen:
ActiveX bzw.
COM ist doch sicher ein Standard. So müßte es doch vordefinierte Interfaces für alle nur möglichen Anwendungsfälle geben. Allerdings sind diese, wie ich bei "Typbibliothek importieren" sehe, ungleich komplexer. Ein eigenes kleineres Interface für die konkrete Anwendung ist da sicher für den Anfang besser. Wenn ich aber eine Standard-Schnittstelle bereitstellen will? Delphi läßt sich ja beispielsweise auch durch Plugins erweitern. Wo finde ich da eine Spezifikation? (nicht für Delphi Schnittstelle, dafür gibt es die Doku, sondern für den allgemeinen Standard) Da der Aufwand hier für das im Thread behandelte Problem schon beachtlich ist, will ich, wenn ich mich schon damit beschäftige, gleich was richtiges machen, sprich, ein standardisiertes Interface haben. Es geht konkret um einen Editor, der durch Plugins erweiterbar sein soll. Wenn ich den später als OpenSource verfügbar mache und jemand hat einen Erweiterungswunsch, will ich einfach ein zusätzliches Plugin schreiben können, das den Wunsch erfüllt.
Es grüßt
Delphifan2004