Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Word über Late Binding aufrufen (https://www.delphipraxis.net/35025-word-ueber-late-binding-aufrufen.html)

Jens Schumann 1. Dez 2004 16:24


Word über Late Binding aufrufen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich habe gerade auf meiner Datensicherungs DVD gestöbert und ein altes D4 Programm gefunden,
dass die Rechtschreibkorrektur von Word verwendet. Komischerweise kommt nur die Meldung
Das angegebene Modul wurde nicht gefunden.
Ich bin mir sicher das es mal funktioniert hat.
Ich bin mir auch sicher, dass Word korrekt installiert ist. (Siehe Bild)

Weiss jemand Rat?
Hier versuche ich mit D7 Word über die Säte Bindung zu starten. Geht auch nicht.
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
    FWord : OleVariant;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

uses ComObj;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  FWord := CreateOleObject('Word.Application'); // <<- funktioniert nicht mehr
end;

end.

Bernhard Geyer 1. Dez 2004 16:34

Re: Word über Late Binding aufrufen
 
Hast Du es auch schon mal über die frühe Bindung versucht. Was passiert, wenn in Excel ein Word eingefügt wird bzw. ein Word-Dokument im IE geöffnet wird.

Es richt nach einer zerschossenen Word-Installation (wobei nur die COM-Registrierung defekt ist).

Jens Schumann 2. Dez 2004 11:15

Re: Word über Late Binding aufrufen
 
Zitat:

Zitat von Bernhard Geyer
Hast Du es auch schon mal über die frühe Bindung versucht. Was passiert, wenn in Excel ein Word eingefügt wird bzw. ein Word-Dokument im IE geöffnet wird.

Es richt nach einer zerschossenen Word-Installation (wobei nur die COM-Registrierung defekt ist).

Das mit der zerschossenen Word-Installation habe ich mir auch gedacht. Ich kann mir aber nicht vorstellen wann und wobei das passiert sein soll.
Werde es mal ausprobieren.


Excel Automation läuft einwandfrei.

Bernhard Geyer 2. Dez 2004 16:28

Re: Word über Late Binding aufrufen
 
Zitat:

Zitat von Jens Schumann
Ich kann mir aber nicht vorstellen wann und wobei das passiert sein soll.

Das COM-System ist ein so fragiles gebilde, da reicht es schon das du über eine ältere Word-Installation eine neue Version installierst um es aus dem Tritt zu bringen. Teilweise hilft nur eine komplette Neuinstalltion des Rechners.

Jens Schumann 2. Dez 2004 16:57

Re: Word über Late Binding aufrufen
 
Zitat:

Zitat von Bernhard Geyer
Zitat:

Zitat von Jens Schumann
Ich kann mir aber nicht vorstellen wann und wobei das passiert sein soll.

Das COM-System ist ein so fragiles gebilde, da reicht es schon das du über eine ältere Word-Installation eine neue Version installierst um es aus dem Tritt zu bringen. Teilweise hilft nur eine komplette Neuinstalltion des Rechners.

Puh, den Rechner habe ich mir letzten Dezember neu gekauft. Bislang wurde nur einmal Office 2003 Pro installiert.

Jens Schumann 2. Dez 2004 17:16

Re: Word über Late Binding aufrufen
 
Hallo Bernhard,
Mist - über die Serverkomponente geht es auch nicht.

Bernhard Geyer 2. Dez 2004 18:49

Re: Word über Late Binding aufrufen
 
Zitat:

Zitat von Jens Schumann
Hallo Bernhard,
Mist - über die Serverkomponente geht es auch nicht.

Die Serverkomponenten verwenden die frühe Bindung - also fast der gleiche Erzeugungsweg.

Jens Schumann 3. Dez 2004 13:58

Re: Word über Late Binding aufrufen
 
Hallo Bernhard,
jetzt habe ich keine Ideen mehr.

Ich habe alle Registry Eintrage zwischen Excel und Winword verglichen.
Insbesondere alle die mit Excel.Application und Word.Application
zusammenhängen.
Unter Excel.Application findet man den Key "CLSID". Den Wert des Schlüssel
interpretiert man dann als neuen Key. Dort findet man dann den Key
"LocalServer32". (Excel und Winword werden ja als Localserver ausgeführt)
Die Werte dieses Schlüssel enthalten die korrekten Verzeichnisse für Winword o. Excel.
D.h. die Registryeinträge Winword's entsprechen denen von Excel.
Deshalb kann ich mir nicht erklären warum Winword nicht gefunden wird.

Eine Installationsreparartur hat nix gebracht. Eine Neuinstallation war ebenfalls
erfolglos.

Hinweis:
wenn ich in Excel ein Word-Document einbetten will kommt die Meldung: Objekt kann nicht eingefügt werden

Jens Schumann 3. Dez 2004 14:13

Re: Word über Late Binding aufrufen
 
Hallo Bernhard,
nach dem ich das vorherige gepostet hatte, habe ich mich dran gemacht und noch einaml
alles zwischen Excel.Applicaiton und Word.Application verglichen.

Ich habe einen Unterschied im Key [HKEY_CLASSES_ROOT\CLSID\{000209FF-0000-0000-C000-000000000046}\InprocServer32 gefunden!
Code:
[HKEY_CLASSES_ROOT\CLSID\{000209FF-0000-0000-C000-000000000046}\InprocServer32]
"Assembly"="Microsoft.Office.Interop.Word, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
"Class"="Microsoft.Office.Interop.Word.ApplicationClass"
"RuntimeVersion"="v1.1.4322"
@="C:\\Programme\\Gemeinsame Dateien\\Symantec Shared\\Script Blocking\\ScrBlock.dll"
Den Wert für den Standardeintrag
Code:
@="C:\\Programme\\Gemeinsame Dateien\\Symantec Shared\\Script Blocking\\ScrBlock.dll"
gibt es für Excel nicht.
Nach dem den Standardeintrag gelöscht habe startet Winword.

Fazit: Problem vorerst gelöst

Bernhard Geyer 3. Dez 2004 18:36

Re: Word über Late Binding aufrufen
 
Zitat:

Zitat von Jens Schumann
Den Wert für den Standardeintrag
Code:
@="C:\\Programme\\Gemeinsame Dateien\\Symantec Shared\\Script Blocking\\ScrBlock.dll"
gibt es für Excel nicht.
Nach dem den Standardeintrag gelöscht habe startet Winword.

Hast/hattest Du evtl. einen Virenscanner von Symantec? Falls ja, so ist der der schultige! Hat sich evtl. nicht richtig installiert/deinstalliert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:49 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