WINCE 500的WIFI设置

http://hi.baidu.com/coldfrost/item/3be5da0a25b92f13cd34ea7f

 

WIFI----简单来说就是做用来组建无线局域网的,在嵌入式系统中做无线网卡的。它的功能基本上和CS8900以及DM9000差不多,没有什么神密的。只不过CS8900/DM9000上有线的,WIFI是无线的。有线的协议是802.3无线的是802.11.功能上是一样的。性能上还没有有线的好。就是因为是无线的技术,所以被吹得很邪糊。
    明白了WIFI的作用,要设置它就如果设置有线网局域网一样。思路就很清楚了。
   关于WIFI的专业术语很多,目的只有一个就是把你搞晕。设置WIFI有两个东东重要,都是老外想出来忽悠咱们的,一个是无线AP,一个是SSID。
这个无线AP说是叫无线接入点,其实就是指无线路由器吗。
SSID就是指这个网络名称
   要把WIFI连上就要两步,很简单,第1 步,看看周围有没有无线路由器,第2步,看看人家有没有密码,
没密码直接连上去,有密码找人要密码。最后,完事。
   再说说在WINCE上是怎么弄的,每个无线路由器都有个名称,如果它开了无线功能,就一定会起个名字的,不然两个无线路由器在一起就分清了。这个名字在程序上就叫SSID。
   所以设置WIFI,第一步就是要获取这个无线路由器的名称, WINCE 500提供了获取这个名字的API,叫WZCQueryInterfaceEx(),用这个函数需要升级PB补丁到最新版,不然就用WZCQueryInterface()。用微软的东西一定要记得打补丁。当然,是用WZCQueryInterfaceEx()还是用WZCQueryInterface()最好是要和相应的内核对应,内核是用打过补丁的PB编出来就用WZCQueryInterfaceEx(),而不要用WZCQueryInterface(),我们在调试的时候发现用后者居然没收到任何数据,后来改用前者问题马上解决。
  
有了网络名称,之后就要看人家有没有设置密码了。因为是无线的,所以有数据安全问题,所以有加密。
不过这事不用你操心,制定无线协议的人也不是混饭吃的,人家早就帮你想好了。随便打开个无线路由器的设置窗口你就可以看到有个4,5种方法吧。不过这个和我们没关系,主要看微软的WINCE 帮我们做了几种。
     微软在这点上还是做得很到位的,加密认证什么的函数都给你写好了。直接去调用可以了。源代码就在PB的安装目录下找
WINCE500\PUBLIC\COMMON\OAK\DRIVERS\NETSAMP\WZCTOOL\wzctool.cpp
还有D:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\NETUI\wzcquickcfgui.c这个是写的微软自己怎么连WIFI的界面和函数调用的。
主要用的函数都在wzctool.cpp 这个里面,这个代码写很长近1800行,很佩服微软的哥哥们,能把很简单的东西写得这么复杂,这么长。其实有用的代码就700行,足以。
wzctool.cpp 里面有几个很关键的函数,直接拷贝过来用
GetFirstWirelessNetworkCard(),找你的无线网卡,微软认为你可能有两块以上的网卡。    WZCQueryInterfaceEx(), 用这个函数需要知道你的网卡名称。
PrintConfigList(),这个打印函数很要用,它会告诉你网络信息中的每一项是什么意思,只是swprintf要改成自己的打印的函数。
InterpretEncryptionKeyValue(),这个是帮你转处理密码的函数,
AddToPreferredNetworkList()这个函数就是帮你连的无线上网的函数了。这个非常奇怪的用法,不用多管
就是这个函数了,密码和网络名称都传给这个函数,然后调用它就连上去了。

另外,可能要需要以下头文件可库如果SDK中没有就在PB中去找
头文件 cxport.h    eap.h    eapol.h wzcsapi.h
库wzcsapi.lib

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值