Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Worddatei Fernsteuern !! Hilfe (https://www.delphipraxis.net/125134-worddatei-fernsteuern-hilfe.html)

alnourx 1. Dez 2008 11:11


Worddatei Fernsteuern !! Hilfe
 
Hallo,

Ich wollte eine Wordedatei fernsteuern und habe folgendes Problem.
Ich arbeite mit Delphi5 und habe auf dem Rechner MS Office2003 installiert, und wenn ich das Programm compiliere, zeigt mir einen fatalen Fehler an. muss ich DLL für MSoffice 2003 installieren, wenn ja, wo kann ich das finden?
ich bin delphi anfänger, ich bitte euch um Hilfe.
Danke.

alnourx 1. Dez 2008 11:46

Re: Worddatei Fernsteuern !! Hilfe
 
Unter uses habe ich nur word2000 und word97!!!
ich bitte euch um vorchläge.
danke
Zitat:

Zitat von alnourx
Hallo,

Ich wollte eine Wordedatei fernsteuern und habe folgendes Problem.
Ich arbeite mit Delphi5 und habe auf dem Rechner MS Office2003 installiert, und wenn ich das Programm compiliere, zeigt mir einen fatalen Fehler an. muss ich DLL für MSoffice 2003 installieren, wenn ja, wo kann ich das finden?
ich bin delphi anfänger, ich bitte euch um Hilfe.
Danke.


Nersgatt 1. Dez 2008 11:55

Re: Worddatei Fernsteuern !! Hilfe
 
Vermutlich ist es sinnvoll, wenn Du uns verrätst, wie die Fehlermeldung genau lautet und Du einen Auszug aus Deinem Code zeigst, wo der Fehler auftritt.

Gruß,
Jens

alnourx 1. Dez 2008 12:07

Re: Worddatei Fernsteuern !! Hilfe
 
UND HIER IST DER FELHER
[Fataler Fehler]UMain.pas(7): Datei nicht gefunden: 'Word2000.dcu'

HIER IST DER CODE
Delphi-Quellcode:
unit UMain;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Word2000, OleServer, StdCtrls, Word97;

type
  TForm1 = class(TForm)
    Button1: TButton;
    WordApplication1: TWordApplication;
    WordDocument1: TWordDocument;
    OpenDialog1: TOpenDialog;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var FileName:OleVariant;
    vWhat, vBookmark:OleVariant;
begin
  if OpenDialog1.Execute then
    FileName := OpenDialog1.FileName
  else
    exit;
  vWhat:=wdGoToBookmark;
  WordApplication1.Connect;
  WordApplication1.Documents.OpenOld(FileName, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
                                     EmptyParam, EmptyParam, EmptyParam, EmptyParam);
  WordDocument1.ConnectTo(WordApplication1.ActiveDocument);
  WordApplication1.Visible := True;

  vBookmark:='Name';
  WordApplication1.Selection.GoTo_(vWhat,emptyParam,emptyParam,vBookmark);
  WordApplication1.Selection.TypeText('Max Mustermann'#13'Dorfstraße 100');

  vBookmark:='Ort';
  WordApplication1.Selection.GoTo_(vWhat,emptyParam,emptyParam,vBookmark);
  WordApplication1.Selection.TypeText('12345 Sowieso');

  vBookmark:='Schrift';
  WordApplication1.Selection.GoTo_(vWhat,emptyParam,emptyParam,vBookmark);
  WordApplication1.Selection.TypeText('Testausgabe');

  vBookmark:='RechnungText';
  WordApplication1.Selection.GoTo_(vWhat,emptyParam,emptyParam,vBookmark);
  WordApplication1.Selection.TypeText('Posten1'#13'Posten2'#13'Posten3');

  vBookmark:='RechnungBetrag';
  WordApplication1.Selection.GoTo_(vWhat,emptyParam,emptyParam,vBookmark);
  WordApplication1.Selection.TypeText('1.209,09'#13'200,32'#13'22.093.00');
end;

end.
Zitat:

Zitat von Nersgatt
Vermutlich ist es sinnvoll, wenn Du uns verrätst, wie die Fehlermeldung genau lautet und Du einen Auszug aus Deinem Code zeigst, wo der Fehler auftritt.

Gruß,
Jens


Nersgatt 1. Dez 2008 12:56

Re: Worddatei Fernsteuern !! Hilfe
 
Zitat:

Zitat von alnourx
UND HIER IST DER FELHER
[Fataler Fehler]UMain.pas(7): Datei nicht gefunden: 'Word2000.dcu'

Bei mir (BDS2006) liegt die Datei unter $(BDS)\Imports. Schau mal, ob die Datei da ist. Und in den Optionen schauen, ob der Pfad zu der Datei im Bibiliotheks-Pfad eingetragen ist.

Gruß,
Jens

nahpets 1. Dez 2008 12:58

Re: Worddatei Fernsteuern !! Hilfe
 
Hallo,

schau mal im Installationsverzeichnis von Delphi, dort müsste es eine Verzeichnis Imports geben, in dem die Datei Word2000.dcu liegen sollte. Ist dem nicht so, könntest Du noch im Verzeichnis \ocx\Servers\ fündig werden, dort liegen die Quelltextdateien.

Ggfls. musst Du diese Verzeichnisse mit in den Such- bzw. Bibliothekspfad mit aufnehmen.
(So sieht es zumindest bei Delphi 7 aus.)

alnourx 1. Dez 2008 13:46

Re: Worddatei Fernsteuern !! Hilfe
 
Ich habe diese Word2000.dcu nicht im pfad gefunden :-(
was ich gefunden habe nur word97.pas

was soll ich jetzt machen um das programm zu compilieren??? :cry:

Zitat:

Zitat von nahpets
Hallo,

schau mal im Installationsverzeichnis von Delphi, dort müsste es eine Verzeichnis Imports geben, in dem die Datei Word2000.dcu liegen sollte. Ist dem nicht so, könntest Du noch im Verzeichnis \ocx\Servers\ fündig werden, dort liegen die Quelltextdateien.

Ggfls. musst Du diese Verzeichnisse mit in den Such- bzw. Bibliothekspfad mit aufnehmen.
(So sieht es zumindest bei Delphi 7 aus.)


nahpets 1. Dez 2008 14:09

Re: Worddatei Fernsteuern !! Hilfe
 
Hallo,

welche Wordversion benutzt Du 2000 oder 97?

Dein Uses sieht so aus:
Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Word2000, OleServer, StdCtrls, Word97;
Schmeiss da mal Word2000 und Word97 raus und schau mal, was Delphi anschließend meint, selbst dort reinschreiben zu müssen. Das ist dann die Version, die Du benötigst.

Wenn Du Word97.pas gefunden hast, sollte eigentlich im gleichen Verzeichnis auch Word2000.pas und ggfls. WordXP.pas zu finden sein.
Bisher dachte ich immer, dass die Einbindung von einer Wordversion ausreichen würde.
Für welche Wordversionen die entsprechenden Dateien bei Delphi 5 enthalten sind, weiß ich nicht, bei Delphi 6 waren es die Versionen 97 und 2000. Da Delphi 5 aus dem Jahr 1999 ist, kann es sein, dass dort nur die Dateien für Word97 enthalten sind. Daher mein Vorschlag: Entferne mal zuerst nur Word2000 aus der Uses-Anweisung und schau mal, ob das Kompilieren dann funktioniert.

alnourx 1. Dez 2008 14:32

Re: Worddatei Fernsteuern !! Hilfe
 
Liste der Anhänge anzeigen (Anzahl: 1)
Als ich die Word2000 gelöscht und das Programm compiliert habe, habe ich folgende Fehler bekommen, wie im Bild1(Im Anhang) dargestellt sind.
was ist deine Schlussfolgerung??

Zitat:

Zitat von nahpets
Hallo,

welche Wordversion benutzt Du 2000 oder 97?

Dein Uses sieht so aus:
Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Word2000, OleServer, StdCtrls, Word97;
Schmeiss da mal Word2000 und Word97 raus und schau mal, was Delphi anschließend meint, selbst dort reinschreiben zu müssen. Das ist dann die Version, die Du benötigst.

Wenn Du Word97.pas gefunden hast, sollte eigentlich im gleichen Verzeichnis auch Word2000.pas und ggfls. WordXP.pas zu finden sein.
Bisher dachte ich immer, dass die Einbindung von einer Wordversion ausreichen würde.
Für welche Wordversionen die entsprechenden Dateien bei Delphi 5 enthalten sind, weiß ich nicht, bei Delphi 6 waren es die Versionen 97 und 2000. Da Delphi 5 aus dem Jahr 1999 ist, kann es sein, dass dort nur die Dateien für Word97 enthalten sind. Daher mein Vorschlag: Entferne mal zuerst nur Word2000 aus der Uses-Anweisung und schau mal, ob das Kompilieren dann funktioniert.


nahpets 1. Dez 2008 14:59

Re: Worddatei Fernsteuern !! Hilfe
 
Schnellschussantwort:

Dein Quelltext ist mit Delphi 5 nicht verwendbar, er ist wohl für eine neuere Wordversion (Word2000) gedacht, als von Delphi 5 unterstützt wird.

Hier müsste man sich jetzt Schritt für Schritt von Fehlermeldung zu Fehlermeldung durchhangeln, in der Hoffnung, dass der Quelltext für Word97 kompatibel zu machen ist.

OpenOld ließe sich eventuell durch Open ersetzen, inwieweit die parameterkompatibel sind, weiß ich nicht.
Zum Fehler in Zeile 37 müsstest Du in die Word97.pas schauen, von welchem Typ die Variabel ist und ob der angegebene Wert zu dem Typ unter Delphi 5 passt.

Was möchtest Du mit Deinem Programm erreichen?

Da Du schreibst, Du seiest noch Anfänger, überleg' Dir bitte, ob dass nicht eventuell noch ein paar Nummern zu groß ist.
Oder hast Du jemanden, der mit Dir zusammen am Rechner die Probleme lösen kann, dann könnte das für Dich schon einen ordentlichen Lerneffekt geben. So auf die Ferne als Frage- und Antwortpingpong vermute ich aber eher, dass das einen erhöhten Frusteffekt gibt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:32 Uhr.
Seite 1 von 2  1 2      

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