引用: 引用 3 楼 hudaweikevin 的回复:
找到wifi驱动里的开关部分,做一个自启动程序,程序里调用wifi驱动关闭WIFI
引用: 引用 6 楼 jeanszu 的回复:
可以用开关电源来控制功耗啊
引用: 引用 9 楼 linhanlao 的回复:
试试这种代码,注意修改 98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1? 為你自己的wifi设备
void WifiOn()?
{?
? ? DevicePowerNotify(_T("{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1"), D0, POWER_NAME);?
? ? SetDevicePower(_T("{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1"), POWER_NAME, D0);?
}?
?
void WifiOff()?
{?
? ? DevicePowerNotify(_T("{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1"), D4, POWER_NAME);?
? ? SetDevicePower(_T("{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1"), POWER_NAME, D4);?
}?
引用: 引用 9 楼 linhanlao 的回复:
试试这种代码,注意修改 98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1? 為你自己的wifi设备
void WifiOn()?
{?
? ? DevicePowerNotify(_T("{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1"), D0, POWER_NAME);?
? ? SetDevicePower(_T("{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1"), POWER_NAME, D0);?
}?
?
void WifiOff()?
{?
? ? DevicePowerNotify(_T("{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1"), D4, POWER_NAME);?
? ? SetDevicePower(_T("{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\WLAGS46F1"), POWER_NAME, D4);?
}?
引用: 引用 13 楼 sailorlyq 的回复:
各位大侠给出的方法应该是正确的,但现在仍然有个问题。
当我wifioff的时候任务栏上可以看到网络图标显示断开,但wifion的时候网络图标仍然是断开的,无法恢复。而且显示信号很好。
引用: 引用 15 楼 sniper167 的回复:
引用 13 楼 sailorlyq 的回复:
各位大侠给出的方法应该是正确的,但现在仍然有个问题。
当我wifioff的时候任务栏上可以看到网络图标显示断开,但wifion的时候网络图标仍然是断开的,无法恢复。而且显示信号很好。
貌似没有DevicePowerNotify 所以GWES不更新图标状态
引用: 引用 17 楼 suwyhoho 的回复:
LZ先确认下系统中有没有加载NDISPWR.DLL,如果没有的话,把这个组件加上
WIFI在默认情况下,是开机自动打开的,如果要开机禁用,在HKEY_LOCAL_MACHINE\Comm\NdisPower创建一个键值
name = 4
name是你用的WIFI的名字
如果想开机自动打开,把这个键值删掉
打开关闭WIFI时,想网络图标正常,除了用setdevicepower外
还要用到NDIS的IOCTL_NDIS_BIND_ADAPTER或者IOCTL_NDIS_UNBIND_ADAPTER
绑定或者解除绑定
引用: 引用 18 楼 sailorlyq 的回复:
引用 17 楼 suwyhoho 的回复:
LZ先确认下系统中有没有加载NDISPWR.DLL,如果没有的话,把这个组件加上
WIFI在默认情况下,是开机自动打开的,如果要开机禁用,在HKEY_LOCAL_MACHINE\Comm\NdisPower创建一个键值
name = 4
name是你用的WIFI的名字
如果想开机自动打开,把这个键值删掉
打开关闭WIFI时,想网络图标正常,除了用setdevicepower外
还要用到NDIS的IOCTL_NDIS_BIND_ADAPTER或者IOCTL_NDIS_UNBIND_ADAPTER
绑定或者解除绑定
这位大侠好像说的很靠谱,能不能详细一些呀?
我看wifi厂商提供的注册表里有这些东西
? [HKEY_LOCAL_MACHINE\Comm\JaguarSDN1]
"DisplayName"="SyChip JaguarSDN Wireless Card"
"Group"="NDIS"
"ImagePath"="JaguarSDN.dll"
[HKEY_LOCAL_MACHINE\Drivers\SDCARD\ClientDrivers\Custom\MANF-02DF-CARDID-9103-FUNC-1]
"Prefix"="SDN"
"Dll"="JaguarSDN.dll"
"Instance0"="JaguarSDN:JaguarSDN1"
这样的话我写成"JaguarSDN1" = 4 可以吗?
IOCTL_NDIS_BIND_ADAPTER是用deviceiocontrol控制吗?可不可以弄个小例子,多谢指点。