PowerShell 技能连载 - 获取无线网卡
在上一个技巧中,我们演示了如何使用注册表信息来查找无线网卡。以下是一个可以返回您系统中所有无线网卡的 Get-WirelessAdapter
函数:
function Get-WirelessAdapter
{
Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Network\*\*\Connection' -ErrorAction SilentlyContinue |
Select-Object -Property MediaSubType, PNPInstanceID |
Where-Object { $_.MediaSubType -eq 2 -and $_.PnpInstanceID } |
Select-Object -ExpandProperty PnpInstanceID |
ForEach-Object {
$wmipnpID = $_.Replace('\', '\\')
Get-WmiObject -Class Win32_NetworkAdapter -Filter "PNPDeviceID='$wmipnpID'"
}
}
只需要运行该函数:
由于该函数返回一个 WMI 对象,所以您可以获知该网卡当前是否是活动的,或者启用禁用它。
以下代码将取出网卡对象,然后禁用它,再启用它:
$adapter = Get-WirelessAdapter
$adapter.Disable().ReturnValue
$adapter.Enable().ReturnValue
请注意返回值 5 意味着您没有足够的权限。请以管理员身份运行该脚本。
PowerShell 技能连载 - 获取无线网卡