HidHide

Home > HidHide

HidHide, a kernel-mode filter driver compatible with Windows 10 or later (KMDF 1.13+), includes a configuration utility for driver control. The filter driver autonomously initiates with system privileges, and driver installation or removal may prompt a system reboot. The configuration utility operates in the least privileged mode, eliminating the need for elevated rights.

Microsoft Windows provides extensive support for various human interface devices, such as joysticks and game pads. However, the task of associating buttons and axes of these devices with specific application behaviors, like Fire, Roll, or Pitch, is typically delegated to individual application developers.

While some applications excel in allowing users to customize controls, others may lack sophistication or lack specific customization features users desire. This is where utilities like vJoy and Joystick Gremlin prove invaluable. Unrestricted by vendor limitations, these utilities aim to reintegrate certain features into the operating system’s domain. Once configured, these features become universally accessible across a wide array of applications.

One common technique employed by these utilities involves using a feeder application that monitors physical devices on a system. This feeder application then controls one or more virtual devices that the game or application listens to. By mapping physical devices to virtual ones, these utilities enable functionalities such as dual joystick support in games designed for a single joystick or allow multiple devices to bind to the same function in games with single-controller bindings.

While this approach offers numerous advantages, it does come with a notable side effect. Many applications record user interactions during the process of binding functions to controls or button presses. When using a virtual device, the application receives input from both the triggered physical device and the corresponding virtual device. Although some feeders attempt to spam the application repeatedly to manage this, such an approach proves cumbersome and error-prone.

Enter HidHide, a solution that empowers users to restrict a specific application’s access to one or more human interface devices, effectively concealing these devices from the application. For instance, if a flight simulator prefers a Hands On Throttle and Stick (HOTAS) setup, users can hide game pads. Similarly, for racing games favoring a steering wheel, users can hide joysticks. In scenarios where a feeder utility is employed, HidHide becomes a valuable tool for concealing the physical device from the application, thus preventing multiple notifications during the binding of game functions and device controls.

 

Guide for Users

The configuration utility enables you to:

  • Toggle the service on or off.
  • Define the applications permitted to access the cloak.
  • Specify the human interface devices to be concealed from regular applications.


The Applications tab displays a list of authorized applications with access to concealed devices. Typically, this includes vendor-specific utilities for configuring human interface devices and feeder utilities. To add entries to the list, use the “+” button. You can select one or more entries using the shift and/or control key and remove them by pressing the “-” button. It’s important to note that the client intentionally replaces a logical drive letter with a full path, providing resilience against changes in logical drive mapping.

By default, the Devices tab presents a list of all gaming devices currently connected to the system, with automatic refreshing whenever a new device is detected. The dialog includes two checkboxes for filtering.

The “Filter-out disconnected” option extends the list to include devices previously connected to the system but currently absent. Enabling “Gaming devices only” limits the list to game pads and joysticks exclusively. Note that this function depends on accurate information provided by device vendors; certain vendors may utilize proprietary codes. If your gaming device appears missing from the list, consider disabling this filter. However, these filters are disregarded for devices selected for hiding, ensuring a comprehensive overview of concealed devices.

Additionally, the “Enable device hiding” checkbox governs the HidHide service. When activated, it restricts access to blacklisted devices unless explicitly whitelisted by an application. Conversely, when deactivated, all applications are granted access to all devices.

Expanding an entry in the list reveals any composite devices associated with it, offering detailed control over each device. HidHide also utilizes the selection for a secondary purpose: certain legacy applications bypass the operating system’s human interface device layer, and HidHide manages these accordingly.


tead interact with the underlying device driver. Access to the underlying driver will be blocked when a device only has composite HID devices, and all are selected.

The expanded list may mark entries as absent or denied. absent entries appear when the device characteristics are altered. These are residual entries in the caches of the operating system, and can be cleaned-up using utilities like Device Cleanup Tool. denied entries appear for hidden devices when the configuration utility itself is not whilelisted.

Package Integration

Installation packages and external applications often depend on the information stored in the following pair of registry keys. The first key, “HKCR\Installer\Dependencies\NSS.Drivers.HidHide.x64\Version,” indicates the presence of HidHide along with its specific version. The second key, “HKCR\SOFTWARE\Nefarius Software Solutions e.U.\Nefarius Software Solutions e.U. HidHide\Path,” provides the path to its location.

When deploying third-party software, leveraging the HidHide Command Line Interface (CLI) can enhance the deployment process. It is crucial to exercise caution when modifying a client’s configuration, limiting adjustments to the addition of new features. It is advised not to assume exclusive control over configuration settings, as manual user intervention is typically required for recovery purposes.

Bugs & Features

Encountered a bug and seeking a resolution? Please take the initiative to report the issue by opening a comprehensive problem description on the GitHub issue tracker!

HidHide incorporates both logging and tracing functionalities. For logging, navigate to the Event Viewer under Windows Logs and System. Tracing, on the other hand, can be located under Applications and Services Logs and Nefarius. Make sure to enable Show Analytic and Debug Logs to access tracing. Although extended tracing is available, it is turned off by default for performance considerations.

Control over tracing is facilitated through the wevtutil utility, an integral part of the operating system. To activate extended tracing, follow these steps in a command shell:

  • wevtutil set-log Nefarius-Drivers-HidHide/Diagnostic /e:false
  • wevtutil set-log Nefarius-Drivers-HidHide/Diagnostic /k:5

wevtutil set-log Nefarius-Drivers-HidHide/Diagnostic /e:true
Note that tracing adjustments persist after a system reboot. To revert tracing to its default level, employ the same sequence with /k:1 instead. If you wish to enable tracing to the debug console, use /k:3 and /k:7, respectively.

Download HidHide

Version v1.11.0
File Size 3.25MB
Developer Nefarius
Last Updated 11 November 2023
Download Download

Crafting a utility like this demands significant time and commitment. If you feel inclined to show appreciation, consider making a pledge for a game I hold in high regard: Star Citizen, presently the largest crowd-funded game in development. When creating your account, remember to input a referral code for added in-game currency; note that this cannot be applied retroactively. My referral code, should you require one, is STAR-K6S5-KPY7. Enjoy your experience and look forward to encountering you in the verse!

ViGEm Bus Driver, developed by Nefarius Software Solutions, is a Windows kernel-mode driver enabling users to emulate diverse physical gamepad devices on Windows operating systems.

This driver plays a vital role in ensuring the proper functionality of popular input mapper tools like DS4Windows and DualSenseX.

CONNECT WITH US

Email: [email protected]
Phone: +92-302-743-9438

© 2024 vigembus.com 

Nefarius Software Solutions