项目需求:
开机后JAGUARSDN不要自动运行,此时wifi模块关闭。需要用时,手动启用。
昨天找了一下这测表,HKEY_LOCAL_MACHINE\init下也没有找到合适的修改选项。project.reg的内容很少没找到可以对这项进行修改的地方。common.reg下只找到device.dll等内容。
不知道说清楚没有,多谢大侠们指点。
------解决方案--------------------
的确Wifi一直开着,很浪费电,对于手持式设备简直不可接受,恳请大侠尽快指导指导,我好学习下。
------解决方案--------------------
找到wifi驱动里的开关部分,做一个自启动程序,程序里调用wifi驱动关闭WIFI
------解决方案--------------------
具体部分你要看你的WIFI驱动里是怎么控制WIFI的开关了
------解决方案--------------------
可以用开关电源来控制功耗啊
------解决方案--------------------
wifi驱动是包括电源管理的,不用时让其进入低功耗模式就可以了,接口好像是DevicePowerNotify
------解决方案--------------------
试试这种代码,注意修改 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);
}
------解决方案--------------------
把wifi驱动弄成动态加载
执行JAGUARSDN时,给wifi供电,然后加载wifi驱动
退出JAGUARSDN时,给wifi断电,然后卸载wifi驱动
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
LZ先确认下系统中有没有加载NDISPWR.DLL,如果没有的话,把这个组件加上
WIFI在默认情况下,是开机自动打开的,如果要开机禁用,在HKEY_LOCAL_MACHINE\Comm\NdisPower创建一个键值
name = 4
name是你用的WIFI的名字
如果想开机自动打开,把这个键值删掉
打开关闭WIFI时,想网络图标正常,除了用setdevicepower外
还要用到NDIS的IOCTL_NDIS_BIND_ADAPTER或者IOCTL_NDIS_UNBIND_ADAPTER
绑定或者解除绑定
------解决方案--------------------