Word-Schnittstelle abwärtskompatibel?



  • Hi,

    ich habe eine Doc-Generator geschrieben der Daten aus xml-dateien in Word-Dokumente überträgt. Bei nem Kumpel ging das komischerweise nicht, da er keine Office 2013, sondern Office 2010 hat. In der Fehlermeldung stand auch was, dass er die 15er Office Version nicht gefunden hat. Da ich allerdings keinerlei Abfrage drin hab, die das Kicken älterer Office-Versionen als 2013 zur folge hat, frag ich mich, wie und wo man das einstellen kann.

    mfg



  • Vermutlich verwendest du irgend eine .NET Assembly die halt nur mit Office 2013 funktioniert. Bzw. wenn du Glück hast: ab Office 2013.
    Diese wäre dann unter References zu finden.
    Diesen Eintrag löscht du einfach raus, und fügst eine neue Referenz hinzu, auf die Version die mit (bzw. hoffentlich: ab) Office 2010 funktioniert.

    ps: Alternative: Verwende ne Library die standardkonforme OpenDocument generiert. Das läuft dann ganz ohne Word, und die Dokumente können mit Word, OpenOffice Writer und nem Haufen anderer Programme aufgemacht werden.
    PDF wäre evtl. auch eine Option (speziell wenn das Dokument nur angeguckt/gedruckt werden muss, aber nicht weiter editiert).



  • Benutze z.B. NetOffice - Ein versionsunabhängiger Wrapper für MS-Office, dann bist du unabhängig von der installierten Office-Version.



  • Moin,
    erst mal Danke für die beiden Beiträge.

    Kurze Rückmeldung von meiner Seite (da sich das so gehört):
    Hab beide Varianten separat implementiert. Der Wrapper ist natürlich eine sehr elegante Lösung, die bei mir jetzt auch drin bleibt.
    Allerdings war das Problem auch beseitigt, als die Referenz zur Interop-dll Version 15 durch Version 12 ersetzt wurde. Damit gingen Office 2007, 2010 und 2013, was mich ehrlich gesagt ein wenig stutzig macht im Hinblick auf: "Funktioniert es weil es funktionieren soll?" "Funktioniert es immer?" "Object Library aufwärtskompatibel anstatt abwärtskompatibel?!"

    Aber sei es drum, summa summarum: Danke für die Hilfe!


Anmelden zum Antworten