Does the 'Keyboard Filter' Windows Feature not work in Windows 11 IoT?

Ryan Harrison 5 Reputation points
2026-01-08T21:02:27.9566667+00:00

I have a Windows 10 IoT LTSC 2029 Image that has supported Keyboard Filters for a long time. Specific use case is blocking some key combinations (Alt+F4, Ctrl+Alt+Del) on PCs running enterprise software. Windows 10 works as it should.

In created a very similar image based on Windows 11 IoT (22H2), the same Keyboard Filters are just not working at all.

  1. All desired keys to block are set as "Blocked" at "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Embedded\KeyboardFilter".
  2. Microsoft Keyboard Filter service is running and starts automatically.
  3. DisableKeyboardFilterForAdministrators is set to false (0) but I have also tried with set to true (1) with no success.
  4. I queried 'Windows Features' via powershell and 'Client-Keyboard Filter' is Enabled.

I need suggestions on what else to look at. There isn't any reason these blocked key combinations should be working like they are.

Windows for business | Windows for IoT

Locked Question. You can vote on whether it's helpful, but you can't add comments or replies or follow the question.

5 answers

Sort by: Most helpful
  1. David Venegoni 0 Reputation points
    2026-08-17T09:15:19.3633333+00:00

    Encountered a similar issue where the keyboard filter wouldn't work if the system was started up with no physical keyboard attached and the touch keyboard was used. Changing the startmode of the keyboard filter driver from manual to auto resolved this issue for me:

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbldfltr]

    "Start"=dword:00000002

    Was this answer helpful?

    0 comments No comments
  2. Sean Liming 4,816 Reputation points Volunteer Moderator
    2026-01-18T17:48:33.64+00:00

    Windows 11 IoT (22H2)? Do you mean Windows 11 IoT (24H2)? I have not run into issues with Keyboard filter.

    1. How are you enabling the keyboard filter feature and how are you setting the keyboard filter rules? Are you using SIM?
    2. Are you creating a clean Windows image? Have you run Windows updates?
    3. Please check me Keyboard filter utility to verify the rules are being set: https://annabooks.com/SW_KBFUtility.html
    4. Is the keyboard that you are trying to block on on-screen keyboard or a real hardware keyboard?

    Was this answer helpful?

    0 comments No comments
  3. VPHAN 42,425 Reputation points Independent Advisor
    2026-01-18T14:41:15.79+00:00

    Hi Ryan Harrison,,

    I'm checking back to see if verifying the driver bindings resolved the 2147500036 error on your Windows IoT image. As previously discussed, this specific error indicates the kbdfllt driver is failing to attach to the kernel stack; the solution relies on ensuring kbdfllt is explicitly listed in the UpperFilters registry value at {4d36e96b-e325-11ce-bfc1-08002be10318}, disabling Fast Startup via powercfg /h off to force correct driver initialization, and disabling the TextInputManagementService which frequently overrides filter drivers in the 24H2 environment.

    If the issue has been successfully resolved, please consider accepting the answer as it helps other people sharing the same question benefit too. Thank you!

    VP

    Was this answer helpful?

    0 comments No comments
  4. VPHAN 42,425 Reputation points Independent Advisor
    2026-01-09T17:35:09.7733333+00:00

    Hello Ryan Harrison,

    I am following up to ensure the Keyboard Filter functionality has been successfully restored on your Windows 11 IoT Enterprise 22H2 image. As detailed previously, this failure typically stems from a disconnect between the static registry keys and the active WMI provider, or interference from the Modern Input Stack. Verifying the active rules via Get-CimInstance -Namespace root\standardcimv2\embedded and disabling the TabletInputService to prevent the bypass of kbdfllt.sys are the critical steps to force the filter to engage.

    If the issue has been successfully resolved, please consider accepting the answer as it helps other people sharing the same question benefit too. Thank you!

    VP

    Was this answer helpful?

  5. VPHAN 42,425 Reputation points Independent Advisor
    2026-01-08T21:35:49.5166667+00:00

    Hello Ryan Harrison,

    You should first verify what the system actually recognizes as an active rule by running the PowerShell command Get-CimInstance -Namespace root\standardcimv2\embedded -ClassName WEKF_PredefinedKey. If this command returns no output despite your registry keys being present, you must re-instantiate the rules using the WMI commands (e.g., the Enable-WEKF_PredefinedKey function or direct CIM modification) to force the driver to pick up the configuration. If the rules do appear in the WMI output, the issue is likely the Windows 11 Modern Input stack bypassing the legacy filter driver; you can test this by disabling the "Touch Keyboard and Handwriting Panel Service" (TabletInputService) in services.msc and restarting, as this service frequently intercepts input commands before they reach the Keyboard Filter in the 22H2 release. Finally, check the Microsoft-Windows-KeyboardFilter/Admin channel in Event Viewer for specific failure codes like 0x80070057, which would indicate an invalid scancode definition in your migrated configuration.

    I hope you've found something useful here. If it helps you get more insight into the issue, it's appreciated to accept the answer. Should you have more questions, feel free to leave a message. Have a nice day!

    VP

    Was this answer helpful?

    0 comments No comments