The installer is the first component of the EFS Assistant that a user will experience, so it should work in a very intuitive manner for an administrator evaluating the tool for the first time. That said, we also want to be able to use the same installer to install the tool to thousands of mobile PCs when the administrator is ready to deploy, so the installer must be able to install the bare minimum components when the installer is running in an SMS or Group Policy environment. We have designed the tool to operate effectively in both situations.
This document describes how the EFS Assistant installer (EFSAssistant.msi) should function.
The installer should check the following items before it installs:
- Is the install occuring on a Windows XP SP2 or Windows Vista system
- Is .NET Framework v1.1 or v2.0 installed
- Is the installer running as an administrative user
If any of these checks fail, the installer should display an error message and halt.
There are five features that the installer can install. These features are:
EFS Assistant Tool
Installing this feature will put the EFSAssistant.exe and related DLLs in the installation folder (default location is %ProgramFiles%\Microsoft EFS Assistant). It will also perform install the EFSAssistant MOF file to modify the WMI configuration.
Installing this feature will put the EFSAWMI.vbs script file in the installation directory. See the Reporting Tool Design
for more information about this tool.
Installing this feature will put the appropriate administrative templates on the system. What happens depends on which operating system is running:
- On a Windows Vista system, the EFSAssistant.admx file is copied to the %Windir%\PolicyDefinitions folder, and the EFSAssistant.adml file is copied to the %Windir%\PolicyDefinitions\en-us folder.
- On a Windows XP system, the EFSAssistant.adm file is copied to the %Windir\system32\GroupPolicy\adm folder.
When this feature is installed, a few default settings are configured for the tool. Specifically, the following registry settings are set:
| Registry Key || Value || Purpose |
| HKLM\Software\Policies\Microsoft\EFS Assistant\FolderEncryptionMode || 1 || Encrypt specified folders and perform file categorization |
| HKLM\Software\Policies\Microsoft\EFS Assistant\DebugEnabled || 1 || Turn on debug logging |
| HKLM\Software\Policies\Microsoft\EFS Assistant\DisplayBalloons || 1 || Turn on status balloons |
| HKLM\Software\Policies\Microsoft\EFS Assistant\FileExtensionsToEncrypt || .doc, .docx, .ppt, .pptx, .xls, .xlsx || Sample list of file extensions that will cause file categorization |
NOTE: These settings may be overwritten when the administrator uses the group policy editor to change the tool's configuration.
Installing this feature creates a folder in the start menu called "Microsoft EFS Assistant" and places shortcuts in it. This feature will install shortcuts to the following two files:
- EFSAssistant.exe - The EFS Assistant Tool
- EFSAWMI.vbs - The EFS Assistant Results Viewer
Note that it will only install shortcuts for files that were installed.
As stated before, we need to be able to handle two scenarios:
- Administrator installing the tool on a computer for testing and evaluation
- Administrator pushing the installer to the computers in his environment for pilot or production deployment
To support both scenarios, the installer operates differently in interactive and non-interactive modes. These are described below:
Interactive mode is the default installation mode. The installer runs in this mode if you double-click on the MSI file itself or if you start the installer with the command 'msiexec -i EFSAssistant.msi /qf'
. This mode displays the EULA then allows the user to choose features to be installed. By default, all features listed above will be installed.
The installer can also run in less than full interactive mode (for example when run with the command 'msiexec -x EFSAssistant.msi /qn'
). In this mode, by default, only the EFS Assistant Tool feature will be installed.
If the administrator wants to install other features in non-interactive mode, he can do so using command line options. The options are:
| Feature || Command Line Option to Install || Default Non-interactive Behavior || Default Interactive Behavior |
|EFS Assistant Tool || N/A (Always installed) || Install || Install |
|Reporting Tool || REPORT=1 || Do not install || Install |
|Administrative Templates|| TEMPLATES=1 || Do not install || Install |
|Evaluation Settings || SETTINGS=1 || Do not install || Install |
|Shortcut || SHORTCUTS=1 || Do not install || Install |
To install in background mode, the command is: msiexec /qn -i EFSAssistant.msi [option(s)]
For example, to install the EFS Assistant, the reporting tool, and the program shortcuts, use the following command: msiexec /qn -i EFSAssistant.msi REPORT=1 SHORTCUTS=1
Note: You may, but do not have to, set an option to '0' to turn it off. For example, you can install the tool and the shortcuts but no reporting tool with the following command: msiexec /qn -i EFSAssistant.msi REPORT=0 SHORTCUTS=1
The tool will remove everything when uninstalling in either interactive or non-interactive mode. This includes:
- Removing executables and DLLs
- Removing the reporting tool
- Removing the installation directory
- Removing the default registry settings
- Removing the WMI extensions
- Removing the Start menu shortcuts
Note that the uninstaller will not clean up any debug logs, CSV files generated by the reporting tool, or group policy changes that you may have made.