C# 实现Smart Device WIFI 的打开/关闭

本文介绍了一种使用C#在Windows Mobile系统中通过操作注册表和调用coredll.dll的API函数来实现WIFI设备的打开和关闭的方法。主要涉及SetDevicePower和GetDevicePower两个API函数,通过查询注册表获取WIFI设备名称,并根据设备电源状态进行控制。
摘要由CSDN通过智能技术生成

       在Optidiy的设计之初,便决定添加一个“快速设置”的功能,快速设置主要针对蓝牙、WIFI等设备的快速开关设置,从而跳过windows mobile的层层设置。

       蓝牙的开关设置开发比较顺利,而WIFI的开关则与蓝牙不同,蓝牙是调用BthUtil.dll中函数实现功能,WIFI则没有类似的动态链接库。WIFI的开关在windows mobile系统中本质上为WIFI设备的电源管理,那么只要我们知道了WIFI设备的名称并对其进行电源管理即可完成设备的打开/关闭。

      而Windows Mobile系统的coredll.dll动态连接库中,提供了电源管理的API函数,那么接下来的问题则是:

      1、如何获取WIFI设备名称

      对于获取WIFI设备名称,我通过google找到了相关方法,windows mobile中WIFI设置的名称保存在固定的注册表键值中,那么   我们只需操作注册表读出键值即可。

      2、如果调用电源管理的函数

      至于调用电源管理函数,只要遵循C#调用API函数的方式即可,我们需要知道的是相关电源管理的函数,在实现WIFI打开/关闭功能的代码中我主要用到两个API函数,分别为:SetDevicePower、GetDevicePower

 

      具体实现代码如下:

 

using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
using Microsoft.Win32;

namespace Opti

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值