Ungewolltes Element im Ribbon
-
Dienstag, 7. August 2012 12:07
Ich habe ein AddIn erstellt für MS Word 2007/2010. Dieses globale AddIn beinhaltet unter anderem ein eigenes Ribbon, welches ich mit dem RibbonDesigner von VS 2010 erstellt habe. Funktionell klappt alles in meinem AddIn und ich konnte auch erfolgreich ein setup für dieses AddIn erstellen.
Mein Problem besteht nun darin, dass ich sobald das AddIn nicht auf dem Entwickler PC installiert ist und Word gestartet wird, ein von mir nicht definierte Group, dem Ribbon zugefügt wird. =>(Menü 1 => Beispiel)
Um noch ein bisschen konkreter zu werden: Dieses AddIn ist nur aktiv(Enabled) wenn bestimmte Dokumenteigenschaften zutreffen. Wenn dies der Fall ist habe ich auch noch die UI angepasst und das ganze in einer eigenen Vorlage gespeichert. Editiert habe ich mittels des Tools "Custom UI Editor for Microsoft Office" konkret habe ich dort div. Menüs deaktiviert oder ausgeblendet.
Der Code dazu: für die 2010 Anwendung
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui"> <commands> <command idMso="FileNewBlankDocument" enabled="false"/> <command idMso="FileNewDefault" enabled="false"/> <command idMso="FileNew" enabled="false"/> <command idMso="FileSave" enabled="false"/> <command idMso="FileSaveAs" enabled="false"/> <command idMso="FileOpen" enabled="false"/> <command idMso="FileExit" enabled="false"/> <command idMso="FileClose" enabled="false"/> <command idMso="FileCloseAll" enabled="false"/> <command idMso="FileCloseOrExit" enabled="false"/> <command idMso="WindowClose" enabled="false"/> <command idMso="FileFind" enabled="false"/> <command idMso="FilePrint" enabled="false"/> <command idMso="FilePrintQuick" enabled="false"/> <command idMso="PrintPreviewAndPrint" enabled="false"/> <command idMso="QuickAccessToolbarCustomization" enabled="false"/> </commands> <backstage> <tab idMso="TabPrint" visible="false"/> <tab idMso="TabNew" visible="false"/> <tab idMso="TabInfo" visible="false"/> <tab idMso="TabRecent" visible="false"/> <tab idMso="TabShare" visible="false"/> </backstage> </customUI>
und für eine 2007 Anwendung:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> <commands> <command idMso="FileNewBlankDocument" enabled="false"/> <command idMso="FileNewDefault" enabled="false"/> <command idMso="FileNew" enabled="false"/> <command idMso="FileSave" enabled="false"/> <command idMso="FileSaveAs" enabled="false"/> <command idMso="FileOpen" enabled="false"/> <command idMso="FileExit" enabled="false"/> <command idMso="FileClose" enabled="false"/> <command idMso="FileCloseAll" enabled="false"/> <command idMso="FileCloseOrExit" enabled="false"/> <command idMso="WindowClose" enabled="false"/> <command idMso="FileFind" enabled="false"/> <command idMso="FilePrint" enabled="false"/> <command idMso="FilePrintQuick" enabled="false"/> <command idMso="PrintPreviewAndPrint" enabled="false"/> <command idMso="QuickAccessToolbarCustomization" enabled="false"/> </commands> </customUI>
Makros oder ähnliches gibt es keine.
Alle Dokumente welche mit dem AddIn arbeiten werden anhand dieser Vorlage erstellt.
Umstände:
- Auf dem Entwickler PC wird diese Group in keiner möglichen Konstellation angezeigt. Auch nicht wenn ein Dokument geöffnet wird, welches auf einem Enduser PC die Group anzeigt.
- Auf Enduser PC's wird diese Group angezeigt sobald das AddIn "aktiv" ist, resp. wenn ein Dokument, welches von meiner Vorlage erstellt wurde, geöffnet wird. Dies durchs Band weg in Office 2010 Anwendungen x86/x64, egal mit welchen Interop Assemblies (Versionen 12 oder 14) sogar die Normal.dot habe ich zwischen den PC's kopiert. Ohne Ergebnis und das selbe auch unter Office 2007.
Da ich in keinster Weise diese Group erstellt habe, sie auch logischerweise in VS2010 nicht auftaucht, dazu auf meinem Entwickler PC nie angezeigt wird, bin ich relativ ratlos wie es zu diesem Problem kommt.
Ich hoffe sehr, dass mir jemand ein guten Tipp geben kann wie das zu beheben ist.
Alle Antworten
-
Mittwoch, 8. August 2012 13:48
Es ist wieder mal wie meistens. :-p Zuerst sitzt man tagelang an einem Problem und findet keine Lösung. Gibt sich mühe und schreibt eine Frage in ein Forum, kaum ist der Beitrag online stolpert man über das Problem.
Die Lösung zu diesem komischen Verhalten hilft vielleicht noch jemand anderem:
Wenn ein eigener Ribbon, mittels Designer in VS2010 erstellt wird, muss unbedingt auch die OfficeId variable umbenennt werden. Bei mir stand die noch auf "AddIns" (oder ähnlich) somit hat mir Word die Standard Add In Ribbon mit meiner eigenen zur Laufzeit zusammengefügt.
Also OfficeId auf Custom und dann ein sinnvollen Namen vergeben.
- Als Antwort markiert Kim Schröder Mittwoch, 8. August 2012 13:48

