• 利用SDF2.3获取Windows Mobile上的WiFi接入点信息


        在《Windows Mobile上的无线网络接入点扫描》一文中,讲述了用native code来获取WiFi接入点信息(名字、MAC地址、信号强度RSSI、Wifi信道以及是否需要密码等)的方法。然而,OpenNETCFSmart Device Framework为开发者提供了许多开发捷径,我们可以很方便地获得AP信息,直接使用C#语言,就只需几行代码就可以搞定。

        首先,新建一个智能设备项目,以VS2008+Windows Mobile 6.0 Professional为例,在新建好的项目中,加入对OpenNETCF和OpenNETCF.net的引用,如下图1所示:

    截图02_2

    图1 加入对OpenNETCF的引用

        然后,在Form.cs中,加入对OpenNETCF的引用。

            using OpenNETCF.Net;
            using OpenNETCF.Net.NetworkInformation;

        接着,在需要得到AP信息的地方,使用如下方式获得(以显示在listBox上的方式为例)

    foreach (OpenNETCF.Net.NetworkInformation.INetworkInterface currentNetworkInterface in OpenNETCF.Net.NetworkInformation.WirelessZeroConfigNetworkInterface.GetAllNetworkInterfaces())
    {
        // Make sure we are dealing with a WZC Network Interface
        if (currentNetworkInterface is OpenNETCF.Net.NetworkInformation.WirelessZeroConfigNetworkInterface)
        {
            // Get all the Nearby Access Points that the WZC Network Interface can see
            foreach (OpenNETCF.Net.NetworkInformation.AccessPoint currentAccessPoint in ((OpenNETCF.Net.NetworkInformation.WirelessZeroConfigNetworkInterface)currentNetworkInterface).NearbyAccessPoints)
            {
                // Output the name and the signal stregth of this access point
                this.listBox1.Items.Add(currentAccessPoint.Name + " : " + currentAccessPoint.SignalStrength.Decibels.ToString() + " : " + currentAccessPoint.PhysicalAddress.ToString());
            }
        }
    }

        以下是在我的Cingular8125(WM6.0)上得到的结果:

    Screen01

    图2:测试结果图

        当然,在测试之前,需要事先打开WiFi模块,可以通过设备管理器打开,如下图2所示:

    Screen02

    图3:通过通讯管理打开无线WiFi

        也可以通过代码打开,即使用DevicePowerNotifySetDevicePower

     

    参考链接:

    1.Windows Mobile上的无线网络接入点扫描

    2.Smart Device Framework

    3.DevicePowerNotifySetDevicePower

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    关于selenium中的三种等待方式与EC模块的知识
    re.findall用法
    链表及链表的逆置
    通过两个队列实现一个栈
    flask与Django框架的区别
    http协议与https协议
    Maven系列教材 (四)- 通过命令行创建Maven风格的Java项目
    Maven系列教材 (三)- 仓库概念,下载与配置
    Maven系列教材 (二)- 下载与配置Maven
    Maven系列教材 (一)- 什么是Maven
  • 原文地址:https://www.cnblogs.com/dearsj001/p/GetWMAP.html
Copyright © 2020-2023  润新知