3.2 无线网卡安装的问题和解决方案
Windows CE操作系统支持两种类型的设备驱动程序:内置式设备驱动程序和可安装设备驱动程序。
当目标朵与PC机相链,且目标机有显示屏和链盘时,对于可安装的设备驱动程序,其安装步骤为:建立目标机与PC机的连接,将设备驱动程序的.dll文件复制到Windows CE的Windows目录下;当系统检测到设备时,显示屏中会出现相应的对话框,用键盘输入驱动的名称即可。项目中要为现有的无线网卡安装驱动程序。因为Windows CE系统运行时是基于RAM存储的,ROM相当于只读硬盘,一旦系统断电或冷启动后,RAM中的信息就会丢失,尤其是一些注册表的信息,所以要对RAM持续供电。但由于本系统硬件电源不能保证持续供电,安装了无线网卡的驱动程序后,信息存储在RAM中,系统断电或冷启动后,相关的信息会丢失。而且,目标机在实际使用中无显示屏和键盘。因此,断电重启时需要自动重新安装无线网卡驱动程序。
解决方案为:从系统持久存储SM卡中读取网卡驱动程序xi825.dll和TCP/IP属性配置文件config.txt,并按配置文件设备注册表键值,然后为无线网卡安装驱动程序。若需要根据具体应用环境更新TCP/IP属性值,可用新的配置文件覆盖SM卡中的旧文件,冷启动后,重新设备属性值,在安装网卡驱动即可。
用EVC编写应用程序完成自动安装无线网卡驱动的功能,图3为应用程序的大体流程。
首先,把两个文件从SM卡的storage card文件夹拷贝到Windows CE系统的Windows目录下;拷贝成功后,按config.txt的内容对注册表进行操作,设置具体环境下的TCP/IP属性值;系统检测到无线网卡后,在弹出名为“Unidentified PCCard Adapter”的对话框中程序自动输入网卡驱动程序名,完成无线网卡的自动安装。
3.3 几个具体问题的解决
下面,再讨论一下本方案中几个具体问题的解决办法。包括对注册表的操作、自动安装功能的实现、程序流程的总体控制以及将程序打包封装入操作系统的作法。
3.3.1 对注册表的操作
Windows CE中有一系列API函数可以对注册表进行操作,完成打开关闭注册表、读取或修改键值等功能。另外,Windows CE注册表中值的类型为Unicode;而配置文件config.txt是在PC机上产生的,类别为ANSI。要按cogfing.txt中读取的值设定注册表值,就要进行数据类型的转换,可以用函数MultiByteToWideChar()实现[4]。关键代码如下:

RegOpenKeyEx(HKEY_LOCAL_MACHINE, //根键TEXT("Commxi8251ParmsTcpIP"),
//打开根键下的子键
0, //预留值,必设为0
0, //不支持此项,必设为0
&hKey //最终打开键的句柄指针
);
相关专题
- 无线网状网介绍 (4260篇文章)
- Wimax技术与趋势 (4260篇文章)
- 家庭无线局域网 (4902篇文章)
- 无线宽带路由器 (7389篇文章)
- Windows操作系统安装 (15669篇文章)
- 双网卡专栏 (936篇文章)
- 系统安装手册 (20918篇文章)
- 无线局域网专题 (4902篇文章)
- Windows权限设置 (10273篇文章)
- 有线与无线组网专题 (4421篇文章)
- 无线网卡链接无线路由组网设置详解 (10564次浏览)
- 无线网卡双机互联和双网卡共享上网 (8992次浏览)
- 台式机无线网卡选购指南 (5815次浏览)
- 笔记本电脑无线网卡选购指南 (5744次浏览)
- 双机无线网卡对连实战[多图] (4090次浏览)
- 无线网卡链接无线路由组网设置详解(图) (2533次浏览)
- 家庭无线上网之USB无线网卡选购 (2498次浏览)
- 笔记本电脑无线网卡系列选购指南 (1930次浏览)
- 网件108M笔记本无线网卡小降15 报价205元 (1335次浏览)
- 台式机时髦装备 六款家用USB无线网卡推荐 (1001次浏览)



