Documentation

FireDaemon Zero 2 Users Guide

1.Introduction

Last updated on August 11, 2018
Full

FireDaemon Zero is an application that allows you to easily switch back and forth between your logged-in Windows desktop session and Session 0.

Since the release of Windows Vista and Windows 2008 interactive Windows services (i.e. those with a console or GUI component) have been forced to run in the isolated desktop Session 0. The only way to interact with these interactive services on Session 0 was to switch desktop via the Microsoft supplied Interactive Services Detection Service applet. This method has a variety of limitations and is disabled in Windows by default. FireDaemon Zero is a complete standalone product and drop-in replacement for the inbuilt Windows applet

1.1.Features

Last updated on September 29, 2018
Full

FireDaemon Zero is a complete standalone product and drop-in replacement for the inbuilt Windows applet and provides the following features and advantages:

  • Enables interactive services on Windows 7, Server 2008 R2, 8, Server 2012, 8.1, Server 2012 R2, 10 and Server 2016
  • Starts the Interactive Services Detection Service providing a System Tray Notification Area applet across all user sessions, allowing you to switch back and forth between your logged in session and Session 0 by double-clicking the FireDaemon Zero applet icon
  • Provides the ability for a user to “steal” Session 0 control from another user
  • Provides the ability for a user to “kick” a user off an orphaned Session 0 session
  • Redraws the desktop and windows of applications running in Session 0 correctly avoiding artifacting especially when switching to Session 0 via RDP
  • Allows you to switch to Session 0 indefinitely with no auto-logoff timeout
  • Starts a custom minimisable Task Bar on Session 0 that allows you to find and bring to front applications running on Session 0
  • Eradicates the default nagging desktop popup “warning” you that applications are running on Session 0
  • Provides Start Menu shortcuts, allowing you to simply rollback to the default Windows Interactive Services Detection Service
  • Works seamlessly side-by-side with FireDaemon Pro, FireDaemon Fusion, and FireDaemon ZeroInput
  • Facilitates Session 0 desktop switching via regular Windows, OS-X and Linux RDP/RDC clients, TeamViewer, VNC and other remote control products.

1.2.Compatibility

Last updated on September 29, 2018
Full

Note that Microsoft has decided to remove the Interactive Services Detection Service entirely on Windows 10 Version 1803. Hence, it’s no longer possible to actually switch to Session 0 on that OS version. If you are running Windows 10 Version 1709 or earlier versions of Windows then Session 0 access still works as normal. If you have FireDaemon Zero installed and you upgraded to 1803, the Interactive Service Detection Service will be preserved. However, when you switch desktops, you will switch to a blank screen. You will need to deploy our ZeroInput driver to resolve this issue.

See our deployment matrix to determine FireDaemon Zero and ZeroInput compatibility, as well as recommended deployment combinations.

2.Interactive Installation

Last updated on September 29, 2018
Full

FireDaemon Zero is supplied as a standalone installation executable (EXE). Two versions of the installer are available for 32-bit or 64-bit operating systems. To install, download the installer from the FireDaemon website then copy the installer to a convenient location. FireDaemon Zero will run in trial mode for 30 days. You will need to obtain a license key in order to unlock the product and continue to use it after 30 days.

Start the installer by double clicking on it. You may need to confirm various User Account Control (UAC) or Windows SmartScreen prompts before the installer will run.

Please click Next and the License Agreement will be displayed.

Accept the terms of the license agreement and click Next. The product README will be displayed.

Review the README, then click Next. You can now select the installation folder.

You will be presented with the final installation dialogue. If you are satisfied with your selections, click Install to install FireDaemon Zero.

The installation is complete! Click Finish. FireDaemon Zero will now be running in your System Tray Notification Area. Look for the FireDaemon icon.

2.1.Silent Installation

Last updated on September 29, 2018
Full

The retail product installer supports silent installation. At a command prompt, navigate to the folder containing your installation executable file. Then run the following:

FireDaemon-Zero.exe /s /v"/qn"

You can also specify whether an installation log file is to be generated along with the target installation location. Pay special attention to the inside double quotes as they have to be escaped. For example:

FireDaemon-Zero.exe /s /v"/qn /L=E:\FireDaemon_Zero_install.log INSTALLDIR=\"E:\Program Files\FireDaemon Zero\""

Once the silent installation has completed, you can register the product using the following command:

FDUI0Control.exe register "<serial number name>" "<serial number>"

Alternately, you can install the product silently and provide the license key information at the time time:

FireDaemon-Zero.exe /s /v"/qn INSTALLDIR=\"E:\Program Files\FireDaemon Zero\" SERIALNUMBERNAME="<serial number name>" SERIALNUMBER="<serial number>""

Silent Uninstallation

FireDaemon Zero can also be uninstalled silently. At a command prompt, navigate to the folder containing your installation executable file. Then run the following:

FireDaemon-Zero.exe /x /s /v"/qn"

3.Using FireDaemon Zero

Last updated on September 29, 2018
Full

FireDaemon Zero is straightforward to use. After installing FireDaemon Zero, a FireDaemon application icon will be present in the system tray notification area. Double click on the icon to switch to Session 0. Alternately, right click on the icon to switch session, steal Session 0 control off another user, enter or view license information or obtain the product version information.

FireDaemon Zero displayed in the Windows 10 taskbar

Stealing Session 0 Control

If another user has control of Session 0, it’s possible to steal and take over control from the other user. There is no warning, nor any way for the user currently occupying Session 0 to stop the takeover. Hence, to steal Session 0 control simply click on the “Steal from” menu item above. Note that the RDP user is listed along with the client machine name. It’s also possible to kick a user off Session 0 leaving it unoccupied. This is useful when a user RDP’s to a server, switches to Session 0 then disconnects the RDP session leaving Session 0 inadvertently occupied. Please see the Command Line Options on how to kick a disconnected Session 0 user.

Registering The Product

FireDaemon Session 0 runs as a 30-day trial. After that time, the product will need to be licensed. To activate the product, simply click on Registration Information and then enter your licensing details in the dialog below. Note that the “Registration Information” menu item and dialog are only displayed if you are logged in as a local or domain administrator.

Screen used to register FireDaemon Zero

Working On Session 0

After switching to Session 0, you will see the Session 0 notification area and task bar. Double click on the FireDaemon icon to take you back to your logged in session. You can again right click on the icon to see the various options menu options. You can click on the “V” in the task bar to minimise it. If you click on one of the applications listed in the task bar it will restore the application’s window and bring it to front. The screenshot below shows FireDaemon Zero in action.

FireDaemon Zero working with ZeroInput

3.1.Auditing

Last updated on September 29, 2018
Full

The Windows Operating System and FireDaemon Zero offer settings to generate various entries in the security log and the application event log related to Session 0. Enabling all of them gives administrators the opportunity to figure out exactly who switched to Session 0, reverted from it or was returned to their logged on session.

Configuration

This system security and logging policies can be configured via FireDaemon Zero’s preferences:

Whenever a user is actively or passively involved in Session 0 switching using FireDaemon Zero tools, then FireDaemon Zero, if so configured, will report the action under the Application protocol, source FireDaemon Zero:

ActionEvent IDCategoryEvent MessageLevelEvent User InformationReporting FireDaemon Tool
Switches to0Session 0 (1)User <user> switches to Session 0.Informational<Session User>FDZero Tray
Reverts from1Session 0 (1)User reverts from Session 0 to their logged on session.InformationalFDZero Tray
Kicks out2Session 0 (1)User <user> kicks Session 0.Informational<Process User>FDUI0Control
Takes control over (i.e. steals)3Session 0 (1)User <user> takes control of Session 0.Informational<Session User>FDZero Tray
Gets returned to logged on session (being kick out by another user)4Session 0 (1)User is returned to their logged on session.InformationalFDUI0Shell
Notification (for Session 0):
WTS_CONSOLE_CONNECT
WTS_REMOTE_CONNECT
4778Other Logon/Logoff Events (3107)Session 0 was reconnected to a Window Station.SuccessFDUI0Shell
Notification (for Session 0):
WTS_CONSOLE_DISCONNECT
WTS_REMOTE_DISCONNECT
4779Other Logon/Logoff Events (3107)Session 0 was disconnected from a Window Station.SuccessFDUI0Shell
About Event Categories

There are two event categories that were consciously chosen:

  • Id 1: Session 0
  • Id 3107: Other Logon/Logoff Events

“Session 0” is the event category to be used by all FireDaemon products when reporting Session 0-related events, e.g. FireDaemon Pro reports switching to Session 0.

“Other Logon/Logoff Events” along with specific event IDs imitates entries reported by Windows Security Auditing.

3.2.Windows 10 and Server 2016 Special Considerations

Last updated on September 29, 2018
Full

Windows 10 and Server 2016 no longer permit keyboard and mouse input on Session 0. Based on our technical discussions and correspondence with Microsoft this is “intentional” and “by design” and for “security reasons”. If you do use FireDaemon Zero on Windows 10 or Server 2016, your session will end after 30 seconds and you will be returned to your logged in desktop.

The Windows 10 1803 update has disabled Interactive Services Detection Service entirely. Your services will still run in Session 0 with this Windows update, but you cannot switch to Session 0 and view them in action. If you are running Windows 10 Version 1709 or earlier versions of Windows then Session 0 access still works as normal. If you have FireDaemon Zero installed and you upgraded to 1803, the Interactive Service Detection Service will be preserved, however, when you switch desktop, you will switch to a blank screen.

If you need your keyboard and mouse to work sensibly on Session 0, you have a couple of options:

  • Continue to use any supported prior version of Windows (7/2008 R2 through 8.1/2012 R2).
  • Use FireDaemon ZeroInput to restore keyboard and mouse control on earlier versions of Windows 10 and Server 2016.

4.Command Line Options

Last updated on August 11, 2018
Full

FDUI0Control.exe comes with a variety of command line options to manage FireDaemon Zero. Here is a comprehensive list of those options.

OptionDescription
controlControl FireDaemon Zero and the UI0Detect service. An argument is required for this command. The three arguments are start, stop, and restart.
disableDisables FireDaemon Zero and the UI0Detect service. Specifically:

  • Restores the UI0Detect service ImagePath to %SystemRoot%\System32\UI0Detect.exe

  • Sets the UI0Detect service to Manual start

  • Stops the UI0Detect service

enableEnables FireDaemon Zero and the UI0Detect service. Specifically:

  • Sets the registry value NoInteractiveServices to 0

  • Modifies the UI0Detect service ImagePath

  • Sets the UI0Detect service to Automatic start

  • Starts or restarts the UI0Detect service

help
-?, -h, --help
Displays the FireDaemon Zero help documentation for the command line. The Help command also accepts a subcommand of each of the above subcommand.
kickoutKicks out the user currently controlling Session 0.

You may optionally use -q or --query following kickout to display details of the connection currently controlling Session 0 instead of kicking them out.
licenseShows the license. This command has an optional argument.


  • print Prints the licensee to stdout.

  • dialog Displays the registration information. This is the default argument if none is specified.

preferencesDisplays the Preferences dialog.


  • set-defaults resets the preferences to their default values.

  • dialog displays the Preferences dialog. This is the default argument if none is specified.

queryDisplays various information about Session 0 and the current controller. Exactly one option is required.

-0 or --connection-state: Displays details of the connection currently controlling Session 0.
--fdui0input-state: Displays the state of the FDUI0Input Driver and the status of any patches applied to the driver.
register <licensee> <key> <options>This option registers the product. <licensee> is the serial number name. <key> is the serial number.

This command optionally accepts --enable to enable FireDaemon Zero. Refer to enable above.
-v
--version
Displays the installed version of FireDaemon Zero.

5.Interactive Uninstallation

Last updated on August 11, 2018
Full

FireDaemon Zero can be uninstalled interactively by opening the Control Panel and choosing the Programs and Features applet. Once you have opened the applet look for FireDaemon Zero in your list of installed programs. Right-click and select Uninstall.

Uninstalling FireDaemon Zero from Windows Control Panel

You will be presented with the dialog below. Click Yes to uninstall.

Confirm uninstallation of FireDaemon Zero

6.OEM Product Deployment

Last updated on September 29, 2018
Full

FireDaemon Zero OEM is a variant of FireDaemon Zero specifically designed for use by systems integrators or value added resellers that wish to bundle FireDaemon Zero with their own product or platform. FireDaemon Zero OEM is designed to be included in third-party installers, golden OS images or provisioned via deployment tools such as Puppet or Ansible.

ZIP File Bundle

FireDaemon Zero is supplied as a ZIP file. It contains the following:

  • 32-bit (x86) and 64-bit (x64) binaries
  • 32-bit (x86) and 64-bit (x64) Microsoft Visual C++ 2017 Redistributable packages
  • Registry settings in the form of a .reg file
  • FireDaemon EULA
  • Product version information
Deployment Steps

Determine whether your operating system is 32-bit or 64-bit. Deploy the 32-bit binaries and Visual C++ runtime on 32-bit systems and 64-bit binaries and Visual C++ runtime on 64-bit systems.

Create the following registry key:

HKLM\SOFTWARE\FireDaemon Technologies\FireDaemon Zero

Alternately, double click the supplied FDUI0.reg or FDUI0-Wow6432Node.reg file (if deploying the 32-bit version on a 64-bit system). Note that there are no sub-keys as these are created and managed by the product itself.

Create a target installation directory. For example:
C:\Program Files\FireDaemon Zero

Copy the application binaries to the installation directory. Specifically:

  • FDUI0Control.com
  • FDUI0Control.exe
  • FDUI0Explorer.exe
  • FDUI0Licensing.dll
  • FDUI0Shell.exe
  • FDUI0Tray.exe

At an elevated command prompt, navigate to the installation folder and run: FDUI0Control enable

Note that no license key needs to be supplied to activate the OEM version of the product.

OEM Uninstallation Notes

If you uninstall FireDaemon Zero OEM, run an elevated command prompt, navigate to the installation folder and run FDUI0Control disable before completing the uninstallation.

6.1.Custom Skinning and Branding

Last updated on August 12, 2018
Full

There’s no option to skin or branding the retail or OEM version of the product at this time.

7.Product Binaries

Last updated on August 11, 2018
Full

The table below lists the binaries shipped with both the retail and OEM versions of the product and its purpose. See the Command Line Options section for command line usage.

File NameDescription
FDUI0Control.comConsole wrapper for the FireDaemon Zero CLI. This executable should preferably get used for non-GUI commands because it waits for FireDaemon Zero CLI to complete and its return code can be checked.
FDUI0Control.exeUsed to configure and control FireDaemon Zero.
FDUI0Explorer.exeLightweight Windows Explorer replacement that runs on Session 0 and displays a notification area and task bar. Offers applications running under different user credentials the opportunity to bind to its notification area.

Should FDUI0Explorer.exe crash it will write a dump file into:

%SystemRoot%\System32\config\systemprofile\AppData\LocalLow
%SystemRoot%\SysWOW64\config\systemprofile\AppData\LocalLow (if you installed the 32-bit version on x64).
FDUI0Licensing.dllLicensing logic for FireDaemon Zero.
FDUI0Shell.exeThe FireDaemon Zero service, the drop-in replacement for the Operating System's Interactive Services Detection service.
FDUI0Tray.exeSystem tray application, providing each logged on user the necessary interaction with FireDaemon Zero and Session 0.
Suggest Edit