Windows Server 2019/2022 i2c触摸屏/触摸板无法使用的解决方法
Invalid_R
编辑于 2024年11月29日 00:31

主要信息来源: https://forums.mydigitallife.net/threads/solved-windows-server-hid-i2c.84373/

转载本文的话麻烦带一下本文链接以及上面的原始链接,感谢。

问题表现:

Server 2019以及Server 2022安装完成后,设备管理器中i2c HID Device显示为未知设备而且无法通过GUI安装驱动。

无法通过“浏览计算机上的驱动程序”来安装

问题原因: 1. 从Server 2019起安装程序就不会拷贝hidi2c.sys到C:\Windows\System32\drivers目录下,导致hidi2c驱动无法使用。

2. 从Server 2022起,hidi2c.sys依然缺失,同时增加了C:\Windows\INF目录下的hidi2c.inf因为某些未知的原因导致无法正常使用的问题。

本文中安装的版本是Server 2022(20348.2159),对于Server 2019的用户,本文仅供参考。

问题解决:

1. 打开对应的安装镜像,用7z打开 \sources\boot.wim,在 \1\Windows\INF 中提取到原始的hidi2c.inf;并在 \1\Windows\System32\drivers 中提取到 hidi2c.sys,放在同一个文件夹中备用。

此时如果用sigcheck工具去检查这两个文件会发现它们确实是有签名的,使用PowerShell命令安装也会提示安装成功,但是其实并没有用。

2. 如图所示,修改 hidi2c.inf,将第41行以及第43行的“ NTamd64...1” 改为 “NTamd64” (去除...1)并保存。(不要问我为什么要改,为什么这么改,我也不知道,总之改完可以用,信息来源见本文第一行。)

3. 由于我们肆意妄为的更改,这个INF的数字签名已经永久拜拜,因此我们需要关闭 Server 2022 的强制驱动签名检查,为此要先在机器的 BIOS 中关闭 Secure Boot。什么你需要Secure Boot,那你把我难倒了(闭眼)。

关闭方法:使用管理员权限的 Powershell 终端输入以下命令:

bcdedit /set testsigning on

bcdedit /set nointegritychecks on 提示操作已成功完成后,重启。

4. 重启完成后,打开管理员权限的 Powershell 终端,导航到第一步中放置 hidi2c.inf 和 hidi2c.sys 的文件夹,输入以下命令:

pnputil.exe /add-driver .\hidi2c.inf /install

回车之后会弹出警告,同意即可。

如果此时提示“第三方inf不包含数字签名信息”,尝试使用高级启动——疑难解答——启动设置——禁用驱动程序强制签名,然后重复第4步。

5. 到此驱动应该已经成功安装上了,触摸屏也可以正常使用,泪目。

额外的念叨:

1. 如果不喜欢桌面右下角的测试模式水印可以找方法去掉,网上很多,不赘述了。我还挺喜欢的就留着了。

2. 链接里以及其他来源有靠改注册表来实现驱动的方法,我没有成功(表现为设备图标出现但是黄色感叹号)。怀疑是在需要 hidi2c.inf 之前的可行方法。在 hidi2c.inf 的数字签名消失之后感觉不再可行,不过欢迎各位试试,可以在下面反馈结果。