用.net 2003作Windows CE应用时,碰到一个问题。工程编译通过,但在部署到pocket pc时出现如下的错误:
------ 已启动部署: 项目: PDA, 配置: Debug Pocket PC ------
正在部署到 Pocket PC 设备正在使用 TCP 连接传输
错误: 无法建立连接。请确保此设备已经与开发计算机建立了物理连接。
---------------------- 完成 ---------------------
生成: 1 已成功, 0 已失败, 0 已跳过
部署: 0 已成功, 1 已失败, 0 已跳过
感觉很奇怪,我明明用ActiveSync是可以连上的。到msdn上搜了一下(http://support.microsoft.com/default.aspx?scid=kb;en-us;816826)
原文如下:
Certain users on the desktop computer may notice that the deployment to a Pocket PC device that is connected with ActiveSync is not successful and you receive the following error message:
Could not establish a connection with the device. Please make sure the device is connected and working properly.
Other users on the same computer may be able to deploy and to debug by using the same device, may find that ActiveSync is working correctly, and may find that the file \Windows\ConManClient.exe is not copied to the device when they try to deploy or to debug. These symptoms indicate a possible corrupted security key container.
On the computer that is running Visual Studio .NET, run the DelDesktopCryptKey.exe utility from the command prompt to clean the security key container for the current user. DelDesktopCryptKey.exe is installed with the Windows CE Utilities for Visual Studio .NET 2003 Add-on Pack. By default, DelDesktopCryptKey.exe is located in the Program Files\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\WinCE Utilities\DelDesktopCryptKey folder.
原来是由于security key container过期了,安装Windows CE Utilities for Visual Studio .NET 2003 Add-on package 后,在命令行中到Program Files\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\WinCE Utilities\DelDesktopCryptKey目录下运行DelDesktopCryptKey.exe,然后在重启一下计算机,问题解决。