This article describes in detail how the installer works as well as the impact of UpSlide on the system.
Command line options
By default, UpSlide is installed for all users if the setup is executed with administrator permissions. If not, UpSlide is only installed for the current user.
To install UpSlide from a script, we provide optional parameters for the .exe installation file:
- -q2 to force install to be silent.
- "LANG=en-US" to force the UpSlide User Interface to be in English. You can of course change the UI language and replace en-US by any supported language UID. As of May 2014, support languages are: en-US, fr-FR.
- TsuRunMode=2 to force uninstall
- /a1 to force single user install (note that after V5.1, you will need a specific .msi to do a single user install)
- /a4 to force all user install (setup will request an administrator password to proceed if current user does not have sufficient permissions).
- "KeepExistingConfig=1" to force UpSlide to install on top of any existing version. In that case, the configuration folder is not modified by a new installation. Useful when the customization should not be impacted by deployment.
- "DeployReactivationService=1" to deploy the reactivation service.
- "CheckProcesses=0" to allow UpSlide to install while Office processes are running (Excel, PowerPoint or Word).
- "PathToConfigFolder=CustomPath" to change the location of UpSlide's customization. For example, put the content of the Config folder (found in UpSlide installation folder by default) in I:\UpSlide\Config and add "PathToConfigFolder=I:\UpSlide" to the installation command.
If you need to use the .msi, you can still pass these arguments to the embedded installer by using an EXEOPTIONS parameter. For example, for a single user install in french, you would pass:
Installation Folder (Single User Install)
Application files are installed in the Application Data folder (e.g. %USERPROFILE%\AppData\Roaming\UpSlide in Windows 7).
11 Mo of files are deployed in this folder. They consist mainly of dlls, but also of 3 .vsto files (one for each Office application) which will serve as entry points into UpSlide.
Installation Folder (All User Install)
The installed files are identical, but the installation folder is now located in the Common Application Data folder (e.g. c:\ProgramData\UpSlide for Windows 7).
Apart from deploying application files, the installer also creates a subfolder named Config to store the UpSlide customization, i.e.:
- content libraries,
- template files (Powerpoint or Word),
- table of contents options,
- and other specific content.
Single user Install
As any VSTO add-in, UpSlide needs a registry key to link Excel, PowerPoint or Word to the application dll.
These keys are created in the HKEY_CURRENT_USER hive:
Each of these keys have 4 initial values (see figure below), all required for VSTO to function properly:
- Friendly name (String): name displayed in the list of Add-ins of the Office application.
- Description (String): also displayed in the list of Add-ins.
- LoadBehavior (DWord): specifies if the Add-in is loaded during application start-up. Should always be set to 3.
- Manifest (String): This value links the Office Application to the installed dlls. It points to the .vsto file in the installation folder (the "|vstolocal" string is appended to the path).
All user Install
For an all user install, the same keys are inserted but this time in the local Machine hive (HKEY_LOCAL_MACHINE).
Please beware of two specific requirements:
- If installation is carried out on a x64 machine with a x32 version of Office, the keys are inserted in HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node.
- An additional key value is needed in HKEY_LOCAL_MACHINE\SOFTWARE\Office\12.0\Common\General: EnableLocalMachineVSTO (Dword) set to 1.
Installation parameters are also stored in the registry, in the Excel Addin key (see figure above):
- User interface language is stored in a string value named LANG (as of now, value can either be "fr-FR" or "en-US").
- The user license is stored in HKEY_CURRENT_USER/Software/Microsoft/Office/Excel/Addins/Finance3point1.UpSlide.Excel as a Dword value.
Note: UpSlide is licensed on a per user and per machine basis. Therefore, even if an all-user install was chosen, the license is still stored in the current user registry hive.
To avoid Office trust prompt when UpSlide is first used (see here), the installer installs UpSlide certificate in the Trusted Publisher store.
Modified Folders at run time
UpSlide handles its own Temp folder inside the installation folder.
User settings and log files
These are stored in the application data folder (e.g. %USERPROFILE%\AppData\Roaming\UpSlide in Windows 7). For a single user install, this is the same as the installation folder.
User profile content
Content specific to each user (notably the tombstone database) is store by default in %appdata%\UpSlide\Content.
When the user has an UpSlide administrator license, they can change the UpSlide customization (see paragraph below for more details). These changes will impact the contents of the config folder.
A standard user can also modify the contents of the config folder (although not by choice), for example when UpSlide regenerates settings files for compatibility reasons.
For these reasons, the UpSlide installer gives read and write authorization to everyone on the Config folder.
Repository folder and administrator mode
An UpSlide administrator can modify the contents of the libraries and change multiple settings in UpSlide. This is done directly though custom user interfaces embedded in Excel, Word or PowerPoint. These modifications will be stored in the Config folder as template or .xml files.
Pushing the edited customization is simply a matter or copying the Config folder to the install folder of the other users.
UpSlide provides a built in way of doing so via a shared folder (any UNC path to which all UpSlide users have read and write access).
- The administrator can export a new customization to the shared folder using the Export button as shown in the picture below. A file with an .UpSlide extension is created in the repository (it simply is a compressed version of the Config Folder).
- On each load of the Add-in, UpSlide checks the repository for newer versions of the customization. If a new one is found, it is downloaded using windows native Background Intelligent Transfer Service (BITS).
- Upon first restart after the download is finished, the old Config folder will be replaced by the new one.
This shared folder can either be:
- Chosen before deployment and integrated by the UpSlide team in the application settings. It is then properly set during installation without further customization.
- Edited manually (button browse shown in the picture below). This can be useful if the administrator wants to back up their modifications locally without sharing them with all the users.
- Updated centrally by the UpSlide team as long as the Get shared folder location from UpSlide server button is ticked. This option forces UpSlide to check UpSlide server to retrieve the location of the shared folder.
To centrally manage the location of the shared folder, UpSlide launches a web request upon start up. This web request is launched by the Excel, Word or PowerPoint process.
For this to function properly you might need to make sure that your firewall does not block web access to these processes. You might also need to provide proxy settings to UpSlide. To do so, create a ProxySettings.xml file in the installation folder using the information below to fill in the file:
<?xml version="1.0" encoding="utf-8"?>
<ProxySettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">