Deployment of SuperOffice Ribbons in a Citrix or Terminal Server environment
When installing SuperOffice in a Citrix environment, consider this to avoid problems when the customer starts to use our software.
Ribbons on Citrix or Terminal server
Ask: Will the customer deploy Ribbons to ALL users running in the Citrix/Terminal Server environment?
If all users want Ribbons, you can skip reading this document.
Note
We’re not using the Shadow key system in the registry anymore.
Ribbons deployment
When deploying Ribbons in a Terminal Server/Citrix environment, we use a registry mechanism called Registry propagation built into Microsoft Office.
Note
Registry propagation does not work for Office 2013 in SuperOffice versions below 7.5.
The requirement to get the ribbon components, a user needs to have the AddIns registered in the HKEY_CURRENT_USER
hive of the registry. Since we don’t know who will log in (and new users can be added later on), there is no way for us to write anything to these areas in the registry when we install SuperOffice.
The way we’ve solved this is to register the necessary keys under the HKEY_LOCAL_MACHINE
hive in the registry (64-bit machine).
These keys contain the values that will be copied to the HKEY_CURRENT_USER
keys for a user when he/she starts Microsoft Office programs. These keys will be written AFTER any login scripts have been run, so it is impossible to remove them using such a script.
The problem with the above solution is that for every user that logs in and starts any of the Microsoft Office programs, these registry keys will be copied to their local HKEY_CURRENT_USER
registry hive and they will get a question asking them if they want to install SuperOffice Ribbons/MailLink.
Supporting groups that should (not) have Ribbons
The correct way to support a scenario where some users/groups should get the Ribbons is to remove the registry keys mentioned below:
32-bit environment:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\16.0\User Settings\SuperOfficeOfficeRibbons
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\16.0\User Settings\SuperOfficeRibbons
64-bit environment:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\16.0\User Settings\SuperOfficeOfficeRibbons
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\16.0\User Settings\SuperOfficeRibbons
These keys are for Office 2016, for other Office versions change the path accordingly.
Registry scripts to import
Use the following Registry script to deploy Ribbons to those users/groups that should receive these components. Remember to substitute the paths with correct filenames for your installation!
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Office\Excel\Addins\SuperOfficeRibbon-Excel]
"FriendlyName"="SuperOffice Ribbon"
"Description"="SuperOffice Ribbon for Microsoft Office Excel 2007"
"CommandLineSafe"=dword:00000001
"LoadBehavior"=dword:00000003
"Manifest"="C:\Program Files\SuperOffice\SuperOffice Windows\Ribbons\SuperOffice.Ribbon.Excel.vsto|vstolocal"
[HKEY_CURRENT_USER\Software\Microsoft\Office\PowerPoint\Addins\SuperOfficeRibbon-PowerPoint]
"CommandLineSafe"=dword:00000001
"Manifest"="C:\Program Files\SuperOffice\SuperOffice Windows\Ribbons\SuperOffice.Ribbon.PowerPoint.vsto|vstolocal"
"FriendlyName"="SuperOffice Ribbon"
"Description"="SuperOffice Ribbon for Microsoft PowerPoint 2007"
"LoadBehavior"=dword:00000003
[HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins\SuperOfficeRibbon-Word]
"LoadBehavior"=dword:00000003
"Manifest"="C:\Program Files\SuperOffice\SuperOffice Windows\Ribbons\SuperOffice.Ribbon.Word.vsto|vstolocal"
"FriendlyName"="SuperOffice Ribbon"
"Description"="SuperOffice Ribbon for Microsoft Word 2007"
"CommandLineSafe"=dword:00000001
Ribbons language
How to change default Ribbons language is described in this article.