基于移动设备的Wifi开发组件

很多移动设备都是有自己的类库来操作wifi的,但还是存在一些设备没有专门的开发包,最近这个项目就碰到了这个问题,由于程序需要实时与服务器交互数据所以需要wifi网络支持,并随时监控网络状态,以便控制程序缓存数据或信息提示。上网找了半天终于找到了OpenNETCF.Net 控件。大家可以到这里得到详细信息 ,开发包下载 Build_WiFi_Discover_App_NETCF2.msi。开发包是基于CF.NET 2.0得。但这个开发包使用存在局限,首先它的核心控件是基于CF.NET 1.0基础上的,这样就导致如果你强制使用基于在CF.NET 2.0的window ce 5.0以上的平台,编译时会出现“warning MSB3247” “同一依赖程序集的不同版本之间出现冲突”警告提示,并且在运行时会在调用“PreferredAccessPoints”属性时,出现参数堆栈溢出异常,一句话:不能用。本来打算放弃,自己通过API函数来实现无线网络监控,但OpenNET组织开发出了最新的SDF OpenNETCF 2.2版本,下载安装反编译发现完全建立CF.NET 2.0架构之上,于是试着使用了以下,发现之前的问题都荡然无存,虽然两个版本之间的之间的代码使用上存在较大差异,但新版本确实不错,除wifi之外,USB等连接也都可以监控。


ContractedBlock.gif ExpandedBlockStart.gif Code
NetworkInterface[] m_NetworkInterfaces = NetworkInterface.GetAllNetworkInterfaces();
NetworkInterface m_NetworkInterface 
= null
            
// 查找网络连接
            string strWifiName = "wlan1";
            
foreach (NetworkInterface networInt in m_NetworkInterfaces)
            {
                
if (networInt.Name != "" && networInt.Name.ToLower() == strWifiName.ToLower())
                {
                    m_NetworkInterface 
= (WirelessZeroConfigNetworkInterface)networInt;
                    
break;
                }
            }

            
if (null == this.m_NetworkInterface)
            {
                 
return "查找不到无线网络接入点!";;
            }

            
//查找接入点
            string strWifiSSID = "TP-LINK";
           AccessPoint m_cuurentAP 
= m_NetworkInterface.PreferredAccessPoints.FindBySSID(strWifiSSID); 

更多功能还在慢慢研究。

转载于:https://www.cnblogs.com/richardhu/archive/2008/08/28/1278889.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值