Laden...

[gelöst] VSTO: anderes AddIn temporär deaktivieren

Erstellt von Christel vor 8 Jahren Letzter Beitrag vor 8 Jahren 1.080 Views
C
Christel Themenstarter:in
448 Beiträge seit 2007
vor 8 Jahren
[gelöst] VSTO: anderes AddIn temporär deaktivieren

Hallo,
ich habe unter VS2015 mittels VSTO ein AddIn für Word 2010 geschrieben, welches temporär auf SubVersion zugreift und dort im Rahmen einer Freigabeprozedur mittels SharpSVN ein Commit durchführt. Zusätzlich ist ein weiteres AddIn (MagnetSVN) installiert, welches alle weiteren Funktionalitäten für SubVersion anbieten soll.

Um den Commit-Befehl erfolgreich durchführen zu können, muss ich das Dokument kurzzeitig schließen (sonst meldet SharpSVN eine Zugriffsverletzung). Beim Schließen des Dokumentes wird MagnetSVN automatisch aktiv und wirft eine MessageBox. Diese birgt jedoch die Gefahr einer Fehlbedienung und darf daher nicht erscheinen.

Da es im MagnetSVN keine Einstellungsoption gibt, diese MessageBox auszuschalten, hatte ich mir überlegt, MagnetSVN während der Freigabeprozedur temporär zu deaktivieren. Das müsste aus dem VSTO-Projekt heraus geschehen. Leider habe ich keinen Ansatz dafür finden können, weder im VSTO-Handbuch noch im Netzt.

Gibt es eine Möglichkeit, programmtechnisch ein Word-AddIn zu deaktivieren und wieder zu aktivieren?

Vielen Dank,
Christel

Noch zur Ergänzung:

Der Ansatz, über die Property Application.AddIns zu iterieren, ist gescheitert, denn der Wert

 this.Application.AddIns.Count

ist 0.

Christel

Es ist schlimm, eine Ausnahme zu sein, aber noch schlimmer, keine zu sein.

C
Christel Themenstarter:in
448 Beiträge seit 2007
vor 8 Jahren

Lösung: Da die mit VSTO erzeigten AddIns vom Typ Office.COMAddIn sind, muss durch die Collection

this.Application.COMAddIns

iteriert werden.

Gruß Christel

Es ist schlimm, eine Ausnahme zu sein, aber noch schlimmer, keine zu sein.