Windows: 接口没有ComponentId?
Windows: interface without ComponentId?
大家早上好,
对于我开发的应用程序,在C++中,我需要获取接口的componentId。特别是 WireGuard 接口(componentId=wintun 是与官方 WireGuard 安装程序一起安装的适配器)。通常我从注册表项中获取,
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-<other_numbers>0318}\<NUMBER>
其中 <NUMBER>
取决于您有多少个接口,通常是四位数字,例如 0015 或 0022...
里面应该有值“ComponentId”,在OpenVPN中应该是“tap0901”,在WireGuard中应该是“wintun”。
有时我发现我没有 ComponentId。我在 WireGuard 上看到过,但问题更笼统:
没有ComponentId怎么会有接口呢?什么时候可以发生?如果我没有 componentId,我可以依赖哪个值?
我在这里找到了解决方案
基本上,如果您需要“ComponentId”键,还要检查“MatchingDeviceId”
大家早上好,
对于我开发的应用程序,在C++中,我需要获取接口的componentId。特别是 WireGuard 接口(componentId=wintun 是与官方 WireGuard 安装程序一起安装的适配器)。通常我从注册表项中获取,
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-<other_numbers>0318}\<NUMBER>
其中 <NUMBER>
取决于您有多少个接口,通常是四位数字,例如 0015 或 0022...
里面应该有值“ComponentId”,在OpenVPN中应该是“tap0901”,在WireGuard中应该是“wintun”。
有时我发现我没有 ComponentId。我在 WireGuard 上看到过,但问题更笼统:
没有ComponentId怎么会有接口呢?什么时候可以发生?如果我没有 componentId,我可以依赖哪个值?
我在这里找到了解决方案
基本上,如果您需要“ComponentId”键,还要检查“MatchingDeviceId”