WINCE下ActiveSync连接故障分析
WinCE使用USB口与PC连接,并通过ActiveSync实现远程文件浏览,注册表,进程,编译调试等功能。对于ActiveSync与PC通信过程中出现的故障,在博客中有篇文章讲述WINCE下WINCE下ActiveSync修复办法来介绍解决此类故障的方法。在进一步的研究后发现,排除USB连接问题,ActiveSync自身的验证机制也可能导致工控主板与PC无法正常连接,可能导致连接后,短时间断开,或显示连接却无法使用,或提示“远程主机断开连接”,或提示“无法启动与台式计算机的通信,出现严重错误608”等。
当主板使用USB与PC连接时,ActiveSync的repllog.exe程序将会启动,并尝试访问注册表[HKEY_LOCAL_MACHINE\Comm\SecurityProviders\SCHANNEL]的RNG项进行验证,如果验证出现错误(比如此项被删除不存在),ActiveSync将产生错误退出,从而无法与PC正常连接,单纯的重启主板不能解决该问题。因为ActiveSync每次连接都会修改该项键值,可能在修改该键值的时候发生错误(断电或其它原因),就导致工控主板无法再与PC进行正常连接。