我正在开发的程序上显示虚拟键盘。我不希望任何用户输入表情符号。是否可以删除虚拟键盘中的表情符号按钮?
答案1
我还没有找到完全删除表情符号按钮的方法,但我找到了一种禁用它的方法。
请注意:这将禁用整个触摸屏键盘系统上的表情符号。而不仅仅是针对特定程序。
对于 Windows 8.1
触摸屏键盘使用名为 TipRes.dll 的资源 dll 文件,该文件位于:
C:\Program Files\Common Files\microsoft shared\ink\
您需要编辑此 dll 并删除对表情符号的引用。删除所有引用后,键盘上的表情符号按钮将完全不起作用。
在编辑文件之前,您可能需要更改文件的权限以允许您进行更改。 掌握所有权并给予自己完全控制权。
为了编辑 dll 文件,我使用了一个名为 Resource Hacker 的程序。您可以在这里找到该程序:http://www.angusj.com/resourcehacker/
在 Resource Hacker 中打开 dll 文件并导航到 html 部分。在这里,您会找到一长串键盘布局。向下滚动,直到看到以“EMOJI”开头的布局分组。右键单击每个并选择“删除资源”
用您的更改覆盖原始文件,就完成了!单击表情符号按钮时,它将不再执行任何操作。
如果您收到警告,提示文件正在使用,阻止您保存更改,请确保触摸屏键盘当前未运行。您可以停止 TabletInputService 服务以终止触摸屏键盘的任何实例,或在任务管理器中终止任何 tabtip.exe 进程。
答案2
我一直在研究如何做到这一点,最后我找到了一个注册表项。
给你:转到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\TextInput\TouchKeyboardEmojiButtonAvailability并设置价值到2. 重新启动您的设备或从任务管理器强制重新启动资源管理器以使更改生效。
你的键盘应该是这样的
如果你还需要设置键盘布局,你可以在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\TextInput和这个关联提供更多文档详细信息。
注意:我正在使用 Windows 10 IoT Enterprise 1809 版本,但 1607 之后的任何版本都应该可以使用。