0

我正在为 Windows 编写网络设备驱动程序。我已经让驱动程序正常工作,但它在输出和控制面板>网络适配器Ethernet 2中都显示为通用。ipconfig如何从驱动程序代码中将接口名称设置为自定义名称?我不想从用户级工具中做到这一点。

ipconfig输出:

Ethernet adapter Ethernet 2:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::b5d1:2ce1:3e7c:5aa7%18
   Autoconfiguration IPv4 Address. . : 169.254.90.167
   Subnet Mask . . . . . . . . . . . : 255.255.0.0
   Default Gateway . . . . . . . . . :

网络适​​配器 GUI 屏幕截图: 控制面板>网络适配器

4

1 回答 1

0

Windows 没有任何功能可以让 NIC 驱动程序自行命名。

命名比看起来要复杂一些:

  • Windows 将名称本地化为用户的语言,并且在某些情况下,如果系统区域设置更改,则会自动更新名称。
  • 在一个法律管辖区,操作系统执行政府规定的特殊命名规则。
  • 当使用“一致的设备命名”功能时,Windows 将 PCI 总线拓扑合并到网络接口的名称中。
  • 未来,我们可能会实现新的命名功能,比如允许管理员以 MAC 地址命名所有 NIC。

允许 NIC 驱动程序直接分配自己的名称会破坏操作系统提供此类功能的能力。

来源:我编写了操作系统代码来确定分配给新安装的网络接口的名称。

也许还有另一种方法可以解决这个问题?你想解决的终极问题是什么?(Stack Overflow 不是一个讨论板,因此在这里很难进行深入的来回讨论。许多 Windows 驱动程序开发人员都在 OSR 论坛上闲逛。)

于 2020-06-03T18:40:46.893 回答