AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Kommunikation Delphi und MS-Word 2003
Thema durchsuchen
Ansicht
Themen-Optionen

Kommunikation Delphi und MS-Word 2003

Ein Thema von Dr_Funk · begonnen am 17. Okt 2006 · letzter Beitrag vom 20. Okt 2006
Antwort Antwort
Dr_Funk

Registriert seit: 17. Okt 2006
5 Beiträge
 
Delphi 7 Enterprise
 
#1

Kommunikation Delphi und MS-Word 2003

  Alt 17. Okt 2006, 16:20
Hallo allerseits!!!

Ich möchte gerne wissen, ob und wie es möglich ist Nachrichten von MS-Word mit Delphi zu empfangen? Aus Delphi herraus kann ich bereits Word und ein Formular öffnen und auch wieder schliessen.
Nun ist es ja auch möglich durch Delphi anzeigen zu lassen, dass ein Word gestartet ist -> OnOpen bzw. geschlossen wurde -> OnClose.
Wie ist es nun möglich das Delphi "merkt", dass in Word der Speichervorgang ausgelöst wurde, z. B. drücken der Speicher-Diske.

Mir schwebt vor, dass das Dokument beim Auslösen des Speichervorgangs direkt in eine Datenbank gespeichert wird. Das soll durch die Delphianwendung gemacht werden, der Vorgang soll halt durch eine Nachricht von MS-Word angestossen werden.


..... für Codebeispiele wär ich sehr dankbar.... suche mir schon nen Wolf und bin noch immer nicht viel schlauer.


DANKE schon mal im Vorraus für JEDEN Tip, mag er auch nur so klein sein!!!
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Kommunikation Delphi und MS-Word 2003

  Alt 17. Okt 2006, 18:29
Die Fähigkeiten von Delphi COM/DCOM-Events zu empfangen sind leider sehr begrenzt.
(dies gilt für Delphi 5 und ganz besonders für D4 & D3)

Delphi kann nur einen Komponenten-Wrapper erzeugen.
Zum Glück sind für WinWord diese Komponenten schon standardmässig an Bord (nur Prof-Version oder besser).
In der Komponenten-Palette die 1. Komponente auswählen (TWordApplication) und auf ein Formular ziehen.
Du hast dann die Delphi-Events OnDocumentChange, OnStartup und OnQuit zur Verfügung.

Die Komponentenwrapper wurden (zumindest bei D5) für Word2000 oder Word97 erstellt,
deshalb hast du die neuen Events von Word2003 vorerst nicht zur Verfügung.

PS: bitte deine Delphi-Version in deinem Profil hinterlegen, da bei COM/DCOM sehr grosse Unterschiede zwischen den Versionen existieren
Andreas
  Mit Zitat antworten Zitat
Dr_Funk

Registriert seit: 17. Okt 2006
5 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Kommunikation Delphi und MS-Word 2003

  Alt 18. Okt 2006, 08:17
.... so ich hab mein Profil nun angepasst "Delphi 7 Enterprise" ... ich guck mir dann mal die Wrapper an.
  Mit Zitat antworten Zitat
Dr_Funk

Registriert seit: 17. Okt 2006
5 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Kommunikation Delphi und MS-Word 2003

  Alt 19. Okt 2006, 09:49
Ich hab es mit dem Ereignis 'OnDocumentBeforeSave' gelöst!

Delphi-Quellcode:
procedure TForm1.WordAppDocumentBeforeSave(ASender: TObject;
  const Doc: _Document; var SaveAsUI, Cancel: WordBool);

// Hier wird der MS-Word Speicher-Dialog abgefangen und man kann eine
// eigene Routine durchführen.
// Durch "Cancel" wird der Word- Speichern-unter-Dialog unterbunden.
// Mit "SaveAsUI" kann man wohl einen eigenen Speicher-Dialog erzeugen.
var
  OleStrFileName : OLEVariant;
begin
  if Assigned(WordDoc) then begin
    OleStrFileName := '';
    OleStrFileName := 'c:\test1.doc';
    WordDoc.SaveAs(OleStrFileName);
    ShowMessage ('Das Dokument wurde gespeichert.');
    Cancel := true; // bricht den Speicherdialog ab
  end; // if Assigned(WordDoc)
end;
  Mit Zitat antworten Zitat
Dr_Funk

Registriert seit: 17. Okt 2006
5 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Kommunikation Delphi und MS-Word 2003

  Alt 19. Okt 2006, 15:09
.......könnte mir jemand zu diesem Thema vielleicht ein gutes Buch empfehlen??? .... da scheint es mir nicht so viele zu geben!?
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#6

Re: Kommunikation Delphi und MS-Word 2003

  Alt 19. Okt 2006, 15:46
Du brauchst doppeltes Know-How:
1.) Programmierung von COM/DCOM/ActiveX mit Delphi
http://www.amazon.de/COM-DCOM-COM%2b...710629?ie=UTF8
(lies vor dem Kauf die Rezensionen durch)
2.) Verstehen des Objekt-Modells von Microsoft WinWord
WinWord starten. Extras->Macro->Visual Basic Editor
F1 drücken und "Microsoft Word Visual Basic Referenz" studieren
Es gibt wahrscheinlich auch Bücher dazu.
Andreas
  Mit Zitat antworten Zitat
Dr_Funk

Registriert seit: 17. Okt 2006
5 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Kommunikation Delphi und MS-Word 2003

  Alt 20. Okt 2006, 09:49
.... oh ich hab es fast befürchtet, dass es auf dieses Buch hinausläuft, so toll scheint es ja nicht zu sein .... naja vielleicht besser als gar nichts .... oder ich hol mir nen englisch Sprachiges .... aber aktuell sind die ja alle nicht wirklich ...


Delphi COM Programming

Delphi Programming with Com and ActiveX
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:29 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