Laden...

[Solved] Office Installation benötigt oder reicht PIA?

Letzter Beitrag vor 14 Jahren 4 Posts 717 Views
[Solved] Office Installation benötigt oder reicht PIA?

Hallo,

eine kurze und knackige Frage:

Ich möchte Microsoft.Office.Interop.Word benutzen, die dll wurde mit kopiert, jedoch bekomme ich die folgende Fehlermeldung (auf einem Server):

Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046}
failed due to the following error: 80040154.

Muss ich Office, bzw. Word installieren oder reicht es, wenn ich die Primary Interop Assemblies installiere?

Oder ist Microsoft.Office.Interop.Word ein BESTANDTEIL der Primary Interop Assemblies? Ich vermute schon, d.h. die dll stellt nur die Schnittstelle zu Office/Word dar und ich muss Word noch nachinstallieren?!

Danke schon einmal!

Meines Wissens brauchst du die jeweilige Office-Version dafür.

Gruß Gabe

Edit: Sorry, war grad zu schnell, mit den PIAs bin ich nicht sicher
Edit: Kurz ausprobiert, geht nicht mit den PIAs. Brauchst demnach die richtige Office/Word-Version.

ja du brauchst die passende Office-Veriosn! PIA stellt dir nur eine Schnittstelle zur Verfügung!

Dankeschön.

Denke es funktioniert soweit.

Auf diesem Wege aber noch eine weiterführende Frage:

                ApplicationClass WordApp = new ApplicationClass();

                object _wdLine = Microsoft.Office.Interop.Word.WdUnits.wdLine;
                object _wdCharacter = Microsoft.Office.Interop.Word.WdUnits.wdCharacter;
                object _wdExtend = Microsoft.Office.Interop.Word.WdMovementType.wdExtend;

                object oMissingValue = System.Reflection.Missing.Value;
                object oCount;

                object oFileName = @"Test.doc";
                object oDestFileName = FileName;
                object oNewTemplate = false;
                object oDocumentType = 0;
                object oVisible = true;
                object oBool = true;

                Document _Document = WordApp.Documents.Add(ref oFileName, ref oNewTemplate, ref oDocumentType, ref oVisible);

                oCount = 1;
                WordApp.Selection.MoveDown(ref _wdLine, ref oCount, ref oMissingValue);

                [...]

Es knallt in der letzten Zeile, mit an Sicherheit grenzender Wahrscheinlichkeit aufgrund des oCount's, dies ist die Fehlermeldung:

Object reference not set to an instance of an object.

Leider ist es KORREKT (!), hierran angelehnt:

http://msdn.microsoft.com/de-de/library/aa288631%28VS.71%29.aspx (Strg+F: "count = 1;")

Lokal funktioniert es auch, auf der Servermaschine spuckt er obigen Fehler aus, hat jemand eine Idee?

*Stop, sorry, es lag am nicht gemappten Netzlaufwerk, hatte ich außer acht gelassen. :*