Documentation

FireDaemon ZeroInput Users Guide

1.Why FireDaemon ZeroInput?

Last updated on August 11, 2018
Full

With the release of Windows 10 and Server 2016, Microsoft decided to block keyboard and mouse input on Session 0. So if you have an interactive Windows service running on Session 0, your keyboard and mouse does not work and you will not be able to interact with your application. For more information please refer to our comprehensive discussion on the matter. Additionally, with the release of Windows 10 1803 Microsoft decided to remove the Interactive Services Detection service entirely.

FireDaemon ZeroInput is a free driver that patches the Windows win32kfull.sys system kernel driver. Patching this driver restores Session 0 keyboard and mouse functionality on Windows 10 and Server 2016. The driver also removes the “blacked out” Session 0 desktop on Windows 10 1803. FireDaemon Zero detects that the driver is present and gives you the ability to not automatically switch back from Session 0 after 30-seconds.

2.Warning and Disclaimer

Last updated on August 11, 2018
Full

By downloading and installing FireDaemon ZeroInput you fully acknowledge that this software modifies the behaviour of your Windows operating system which may result in your operating system ceasing to function normally. As such, you assume all risk and FireDaemon Technologies Limited will not be liable for any loss or damage to your operating system. If you have any doubt whatsoever in regard to the usefulness or fit for purpose of this driver then please, do not use it. Additionally we do not warrant that ZeroInput will continue to work correctly with any future update to Microsoft Windows 10 or Server 2016.

With the disclaimer in mind, we recommend installing FireDaemon ZeroInput in a disposable virtual machine to ensure it meets your requirements and functions as expected before deploying this patch in production.

3.Prerequisites

Last updated on August 11, 2018
Full
Compatibility

This driver is for use with Windows 10 or Server 2016 only. It’s not required to be deployed on any other version of Windows prior to Windows 10 or Server 2016. Our deployment matrix summarises when and where you should deploy Zero and ZeroInput.

System Preparation

Before installation, ensure you have Windows 10 or Server 2016 installed and that the operating system is fully patched. Also ensure you have a full backup of your operating system such that you can completely restore.

Windows 10 1803 UI0Detect Service Installation

If you have Windows 10 1803 installed, you will need to setup the Interactive Services Detection Service. Skip this step if you are using Windows Server 2016 or an earlier version of Windows 10, as UI0Detect will already be installed.

Login in as a local or domain administrator, and open an elevated command prompt.

At the elevated command prompt type the following three commands to re-create the UI0Detect service.

sc create UI0Detect start= auto type= own type= interact error= severe binpath= "C:WindowsSystem32winver.exe"
sc sidtype UI0Detect unrestricted
sc privs UI0Detect SeTcbPrivilege/SeAssignPrimaryTokenPrivilege/SeIncreaseQuotaPrivilege/SeDebugPrivilege

Note: In the sc create command, we have used winver.exe in the binpath. This is a “stub”. sc won’t create the service if you supply an invalid binpath. When you install FireDaemon Zero, the binpath is updated. Alternately, and if you are feeling really brave, copy over the UI0Detect.exe binary from an earlier version of Windows 10 to C:WindowsSystem32. Then adjust the binpath to read “C:WindowsSystem32UI0Detect.exe”. If you do this you will be able to start the UI0Detect service and you should be able to switch desktop to Session 0 via the legacy Interactive Services popup.

FireDaemon Zero Installation

If you have Windows 10 1803 installed, and as a result of the standard UI0Detect binaries being removed from the operating system, you must install FireDaemon Zero. This step is optional on Server 2016; however, managing Session 0 without FireDaemon Zero is painful. FireDaemon Zero enables interactive services system-wide, updates the UI0Detect service to work with the Zero task tray applet plus gives you an easy way to switch back and forth between your logged in user session and Session 0.

4.Installation

Last updated on August 11, 2018
Full

Installing FireDaemon ZeroInput is straightforward. Before taking the below steps, make sure Windows 10 or Server 2016 is installed and fully patched with the operating system’s latest updates and that you have a full backup of your operating system.

Log in as a local or domain administrator.

Download the ZeroInput driver zip file and unpack it to the directory of your choice.

For 32-bit Windows 10 users: Copy the file “FDUI0Input.sys” from the x86 folder to C:WindowsSystem32drivers

For 64-bit Windows 10 or Server 2016 users: copy the file “FDUI0Input.sys” from the x64 folder to C:WindowsSystem32drivers

Open an elevated Windows command prompt. At the command prompt, enter:

bcdedit /set testsigning on

This command sets your operating system in Driver Test Signing Mode.

Restart your computer for the change to take effect. After your computer has restarted, log in again as a local or domain administrator.

Open an elevated command prompt. Enter the following to install the driver:

sc create FDUI0Input type= kernel binPath= C:WindowsSystem32driversFDUI0Input.sys start= system

Restart your computer for the change to take effect. After your computer has restarted, log in again as a local or domain administrator.

With FireDaemon Pro or FireDaemon Zero installed, switch to Session 0, and your keyboard and mouse will work again.

FireDaemon ZeroInput in action

5.Querying the ZeroInput Driver

Last updated on August 11, 2018
Full

FireDaemon Zero is ZeroInput-aware. You can query the running state of the ZeroInput driver by typing the following at an elevated command prompt:

cd C:Program FilesFireDaemon Zero
FDUI0Control query --fdui0input-state

6.Uninstallation

Last updated on August 11, 2018
Full

To remove the ZeroInput driver, first log in as a local or domain administrator. Open an elevated command prompt. At the command prompt type:

sc delete FDUI0Input
bcdedit /set testsigning off

If you have Windows 10 1803 installed, uninstall FireDaemon Zero after completing the above steps. Then open an elevated command prompt and enter:
sc delete UI0Detect

Then reboot your machine.

7.Limitations

Last updated on August 11, 2018
Full

At this point, the driver uses our DigiCert Authenticode Certificate. Hence, for it to function, you need to place your operating system in test mode. This will leave a watermark on your desktop and operating system in a state where other drivers could be installed surreptitiously. To resolve this, the driver needs to be signed with an EV kernel certificate and submitted to the Microsoft Windows Hardware Development Center for counter-signing. At this point we don’t possess an EV kernel certificate. If you are in possession of your own EV code signing certificate, you are free to re-sign the driver and submit to the Windows Hardware Development Center.

Also, after applying Windows Updates, you might find your machine is no longer in Driver Test Signing Mode. You will have to re-enable Driver Test Signing Mode again per the instructions above and reboot. No need to reinstall the driver.

Suggest Edit