Announcement

Collapse
No announcement yet.

Procedur an Variant.procedur zuweisen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Procedur an Variant.procedur zuweisen

    Hallo zusammen, mein Problem dürfte wohl eine echte kleinigkeit sein aber irgendwie habe ich da ein Problem zwischen den Ohren: Da ich Word nur für eine Kleinigkeit brauche erzeuge ich es "von Hand" als Variant. Da ich das schliessen mitbekommen möchte habe ich eine kleine DummyKlasse erzeugt:<pre>
    Type
    TDummy = class(TObject)
    public
    procedure onWordQuit(Sender:TObject);
    end;

    Var
    dummy : TDummy;
    wordApp : Variant;
    </pre>
    Wie bekomme ich die Procedure onWordQuit jetzt
    an wordApp.onQuit zugewiesen, Delphi stellt sich absolut quer, die Zuweisung anzunehmen, ich traue mich gar nicht zu schreiben, was ich schon alles Versucht habe ;o))

  • #2
    Hallo,

    wenn man in eigener Regie die nativen Events der COM-Objekte von Microsoft Word auslesen möchte, ist folgendes zu tun: <br>
    1. COM-Objekt als Nachfolger von <b>TInterfacedObject</b> einrichten, dass das Events-Interface von Word implementiert <br>
    2. Ereignisbehandlungsmethode für das gesuchte Event implementieren <br>
    3. Zur Laufzeit eine Verbindung zum <b>IConnectionPointContainer</b>-Interface der erzeugten Word-Instanz herstellen <br>
    4. Über <b>FindConnectionPoint</b> das "richtige" Event-Interface suchen <br>
    5. Über <b>Advise</b> die eigene Senke für diese Event-Quelle anmelden <br>
    6. Am Ende das Ganze wieder korrekt bei Word abmelden.

    P.S: Ein abschreckendes Beispiel ist in meinem ADO-Buch zu finden. Es macht überhaupt keinen Sinn, nicht die bequemen VCL-Wrapperkomponenten zu nutzen, wenn die Events der Word-Objekte ausgewertet werden sollen

    Comment


    • #3
      Es giebt keine Möglichkeit "einfach" einen Zeiger auf die Methode zu übergeben?
      Hmm, das ist ärgerlich. Der Hauptgrund für dieses Vorgehen liegt darin, das es sich um eine CLX Anwendung handelt, die aus einer einzelnen Unit heraus wahlweise Word oder OpenOffice steuert. Mit den Delphi Komponenten wären wesentlich mehr Compiler Switches notwendig, ausserdem wären sie eigentlich für die 10 Funktionen die ich brauche "oversized", seufz ;o

      Comment

      Working...
      X