我们有一项服务(以 SYSTEM 用户身份运行),它使用 WMI 获取已安装 Windows 的驱动器的卷序列号。但是,我们有一个客户端,其 WMI 安全性过于严格,我们无法通过这种方式查询卷序列号。
我不想学习 WMI 安全权限的来龙去脉,而是想使用本机 Win32 函数GetVolumeInformation来获取这些信息。但是,我不知道此调用是否使用 WMI 从驱动器获取此信息,或者它是否仅使用在注册表(或其他易于访问的位置)中设置的内容,普通用户可以更改它(我知道如果您真的知道如何更改卷序列号,仍然可以更改)。
GetVolumeInformation 是绕过 WMI 的可行解决方法吗?如果不是,那么在不使用 WMI 调用的情况下,在 C# 中获取此信息的最佳方法是什么?