vs2022编译通过的inf文件,无法使用DefaultUnInstall正常卸载驱动服务并删除注册表

匿名
2024-09-02T10:01:44+00:00

[DefaultUninstall.NTamd64]

LegacyUninstall=1

DelReg = EPWF.DelReg

DelFiles = EPWF.DeleteFiles

[DefaultUninstall.NTarm64]

LegacyUninstall=1

DelReg = EPWF.DelReg

DelFiles = EPWF.DeleteFiles

[DefaultUninstall.NTamd64.Services]

DelService = %DriverName%,,

[DefaultUninstall.NTarm64.Services]

DelService = %DriverName%,,

[EPWF.DelReg]

; ADB

HKLM,SYSTEM\CurrentControlSet\Control\Class{3F966BD9-FA04-4EC5-991C-D326973B5128},UpperFilters,0x00018002,%DriverName%

; WPD

HKLM,SYSTEM\CurrentControlSet\Control\Class{eec5ad98-8080-425f-922a-dabf3de3f69a},UpperFilters,0x00018002,%DriverName%

; USBDevice

HKLM,SYSTEM\CurrentControlSet\Control\Class{88bae032-5a81-49f0-bc3d-a4ff138216d6},UpperFilters,0x00018002,%DriverName%

上面是我的inf文件

我通过命令执行inf文件DefaultUnInstall段来卸载驱动

rundll32.exe setupapi.dll,InstallHinfSection DefaultUnInstall 128 路径\EPWF.inf

但是

在一台win10的x64机器上执行一遍命令时查看sc query epwf还能看到,执行两遍这个命令,才能卸载服务。

在另一台win11的arm64机器上执行一遍命令后再执行就显示安装失败,sc query epwf还能看到。

两个机器的setupapi.dev.log均没有第二次运行的记录,第一次运行的结果都是success

请问是inf文件的DefaultUninstall写的有问题吗?

并且这个写法的delReg能正常删除注册表,但是在vs2022上无法编译通过。

报错:1431 Well-known registry value 'UpperFilters' has incorrect type, expecting value type 7.

我尝试了多种修改,如以下

HKLM,SYSTEM\CurrentControlSet\Control\Class{3F966BD9-FA04-4EC5-991C-D326973B5128},REG_MULTI_SZ,UpperFilters,%DriverName%

HKLM,SYSTEM\CurrentControlSet\Control\Class{3F966BD9-FA04-4EC5-991C-D326973B5128},0x00018002,UpperFilters,%DriverName%

HKLM,SYSTEM\CurrentControlSet\Control\Class{3F966BD9-FA04-4EC5-991C-D326973B5128},REG_MULTI_SZ,UpperFilters,0x00018002,%DriverName%

上面这些写法虽然能编译通过但在win10的x64机器上均无法正常删除注册表,在说明文档中我没有找到关于这类注册表删除写法的清晰的案例。

请问delreg这里应该怎么写,既能编译通过也能删除这个注册表?

锁定的问题。 此问题已从 Microsoft 支持社区迁移。 你可投票决定它是否有用,但不能添加评论或回复,也不能关注问题。 为了保护隐私,对于已迁移的问题,用户个人资料是匿名的。

0 个注释 无注释
{count} 票

1 个答案

排序依据: 非常有帮助
  1. 匿名
    2024-09-03T01:02:04+00:00

    此响应已自动翻译。 因此,可能存在语法错误或奇异的措辞。

    你好

    感谢您在 Microsoft 社区论坛中发帖。

    根据描述,我了解您的问题与 INF 文件和 VS 有关。

    由于此论坛中没有专门研究 INF 文件和 VS 的工程师。为了能够快速有效地处理您的问题,我建议您在 Q&A 论坛中重新发布您的问题,那里将有专门的工程师给您专业有效的回复。

    这是 Q&A 论坛的链接。

    问题 - Microsoft Q&A

    点击右上角的“Ask a Question(提问)”按钮,发布您的问题并选择与您的作品相关的任何标签。

    感谢您的理解和支持。如果您有任何问题或疑虑,请随时告诉我们。

    有好的一天。

    此致敬意

    莫莉

    0 个注释 无注释