Frage

Eine Anwendung in der Entwicklung hat die Anforderungen für die Verwendung von MS Word Rechtschreibprüfung auf bestimmte Textbereichen innerhalb der Anwendung auszuführen.

Im Moment habe ich Office 2007 (die die COM-Objekte Office 12 ist).

Meine Frage ist, wenn ich in den Office 12 Objekte hinzufügen, was Boxen passieren wird, die Office 2003 haben? Dies ist in Bezug auf die beiden anderen Entwicklungs Boxen sowie den Endnutzern.

Bin ich in der Annahme richtig, dass das Endergebnis wird sein, dass die Rechtschreibfähigkeiten nicht für die Benutzer zur Verfügung stehen? Und wenn ich ein Office 11-Objekt verwendet wird, würde das bedeuten, dass die Benutzer nicht in der Lage sein würden, die Rechtschreibprüfung durchführt, wenn sie Office-07 installiert?

War es hilfreich?

Lösung

Wir gaben bis zu versuchen, eine Abhängigkeit von Word zu verwenden, da beide haben unterschiedliche Versionen installiert oder überhaupt keine Office-Installation! Stattdessen entscheiden sich für NetSpell .

Andere Tipps

Ich vermute hier, aber wenn es ist, als Sie die 2007 PIA (Primary Interop Assembly) mit einer 2003-Installation verwenden können, können Sie versuchen, die PIA über Reflexion Zugriff auf, als ich die Anrufe erraten würden Sie nicht wollen, Wechsel zwischen den beiden, und dann wird es keine Rolle - Sie verwenden je nachdem, was installiert ist. Wenn Sie die PIA und installieren, können Sie dann entweder bekommen die Benutzer, Ihnen zu sagen, die sie haben, oder ein wenig schlauer sein und nur 2007 versuchen und wenn es fehlschlägt, versuchen 2003.

Wie ich schon sagte, ich vermute, hier aber es könnte einen Versuch wert sein.

EDIT: Ich fand diese über noreferrer"> Link rel="nofollow Büro PIA. Dies bezieht sich auf Excel aber tatsächlich deckt Büro im Allgemeinen. Ich beneide nicht die Aufgabe, die Sie haben. Sieht aus wie Sie die PIA werden erkennen müssen (was sein oder auch nicht installiert werden) und entsprechend handeln. Klingt wie ein Job für die Reflexion zu mir.

Neuere Versionen von Office werden die meisten, wenn nicht alle die Kompatibilität mit älteren Versionen von COM-Objekten erhalten. Bedeutung, wenn Sie gegen Office 2003 programmieren möchten und 2007 können Sie Office 11 COM-Objekte als Abhängigkeit verwenden, da sie die neuesten waren müssen zur Verfügung, wenn 2003 veröffentlicht wurde. Solange Sie die Methoden überprüfen, ob Sie beide Versionen existieren müssen von COM-Objekten Sie keine Probleme haben sollten, solange Sie die älteren COM-Objekte verwenden.

Leider, obwohl ich diese Lösung für meine eigene Arbeit verwendet haben, ich habe es nicht mit Rechtschreibprüfung getestet. Am Ende stellen Sie sicher, dass Sie Ihren Code mit allen Office-Version testen, die Sie wollen mit integrieren.

auf diese Frage Mein Bauch Reaktion ist einfach vorschlagen, dass Sie einen anderen Weg gehen. Versuchen Sie, eine dritte Partei mit Steuerrechtschreibprüfung. Sie sind relativ billig (und Sie können einige freie Kontrollen finden). Wenigstens auf diese Weise Sie die Version der Steuerung steuern kann, die mit Ihrem App und in der Lage, sich auf sie Funktionalität ist. Ganz ehrlich, ich bin überrascht, diese Bibliothek nicht in dem Windows bereits eingebaut ist. es ist sicher, mit allen Sprachen unterstützt Windows, kompliziert, aber heutzutage ist es ähnlich ist zum Kopieren / Einfügen in Bezug auf die Erwartungen der Benutzer.

Sie können tatsächlich im Paket enthalten sowohl die office11 und Office12 Interops benötigt in beiden Versionen zu arbeiten. Es dauert einige kleinere Arbeiten, aber ich schaffte es zu tun. Ich habe einen Scheck in der Registrierung zu sehen, welches Interop zu nennen, und führe dann den Bann mit der richtigen Version zu überprüfen. Es geht sogar so weit, zu überprüfen, ob Sie Word installiert haben, und wirft einen Fehler hinweisen, dass Sie nicht ohne Wort überprüfen buchstabieren können. Wir gebunden Wort aufgrund des medizinischen Wörterbuch zu verwenden, die in Office-gebunden ist, die wir verwenden müssen.

Führen Sie eine Suche auf Interop oder Com-Wrapper und ich denke, Sie werden feststellen, Sie beide können ziemlich leicht.

scroll top