使用 Visual Studio 2008 从 Windows 10 调试 Windows CE 设备

问题描述 投票:0回答:4

本周我从 Windows 7 升级到 Windows 10。我为移动设备(Windows CE7、Windows Mobile 例如)开发紧凑的框架软件。我使用 Visual Studio 2008。

现在我收到错误:“连接到设备时出错”(设备连接组件)。

Windows Mobile 设备中心正在运行,并且设备显示在我的资源管理器中。 有什么提示吗?

visual-studio-2008 compact-framework windows-10 mobile-devices
4个回答
2
投票

如果它对其他人有帮助,我在 Windows 10 上使用 Visual Studio 2008 并尝试连接到 Windows CE 5.0 设备,但遇到了同样的问题。

Win 10 正在检测该设备,我可以从我的 PC 等浏览其文件系统,但是 VS2008 无法连接,并显示一条消息:

ActiveSync 引导程序初始化失败。请连接/支架 真实设备或下载用户级 Windows Mobile 设备中心 申请来自...

最后我通过手动安装Windows Mobile Device Center 6.1(还有一个32位版本

让它工作起来

2
投票

我不记得从哪里得到这个

WMDC_Service_Fix.bat
文件,但它在
Windows 10
中为我修复了与设备的连接。

以下是批处理文件的内容,只需重新创建并运行即可:

@echo off
::WcesComm is the name of the "Windows Mobile-2003-based device connectivity" service.
::RapiMgr is the name of the "Windows Mobile-based device connectivity" service.
::Both being necessary for proper WMDC functionality.

::The following registry entires set the RapiMgr and WcesComm services to run as seperate processes
REG ADD HKLM\SYSTEM\CurrentControlSet\Services\RapiMgr /v SvcHostSplitDisable /t REG_DWORD /d 1 /f > nul 2>&1
REG ADD HKLM\SYSTEM\CurrentControlSet\Services\WcesComm /v SvcHostSplitDisable /t REG_DWORD /d 1 /f > nul 2>&1
if %errorLevel% == 0 (
    echo Service Registry entries added successfully
    ) else (
        echo Failure: Please run this file as admin.
    goto end_Pause
    )
::Set the compatability of wmdc.exe to Windows Vista (which works more consistently)
REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Windows\WindowsMobile\wmdc.exe" /d "~ VISTARTM" /f > nul 2>&1
if %errorLevel% == 0 (
    echo Compatability Mode for WMDC successfully set
    ) else (
        echo Failure: Please manually set the compatibility mode for
    echo C:\Windows\WindowsMobile\wmdc.exe
    echo to "Vista" for all users.
    )
echo.

::Stop both the services associated with WMDC
net stop WcesComm
net stop RapiMgr

::Set both the services to run as LocalSystem
sc config WcesComm obj= LocalSystem password= "" > nul 2>&1
sc config RapiMgr obj= LocalSystem password= "" > nul 2>&1
if %errorLevel% == 0 (
    echo Services configured to Log in As LocalSystem
    ) else (
        echo Failure: Services could not be updated
    )

echo.

::Restart the services. Starting WCesComm also starts RapiMgr
net start WcesComm

:end_Pause
pause

我在设备上调试时使用

Windows CE Device
选项(带有 Windows CE 6.0 的 Zebra MC2100):

enter image description here

我还使用一个名为

Remote Display Control for Windows CE
CERDisp
的方便小工具。在这里获取它 https://forums.ivanti.com/s/article/CERDisp-Display-and-control-your-Windows-CE-device-from-your-desktop


0
投票

我的具体错误是“ActiveSync 引导初始化失败。请连接/支架真实设备或下载用户级 Windows Mobile 设备中心应用程序...”

此解决方案基于@BrettTaylor 的答案。这些完整的指令已在

Windows 10 22H2 x64
上使用
Visual Studio 2008 SP1
和使用 .NET CF 3.5 目标
Windows CE 6.0
的 C# 应用程序进行了测试:

  • Windows Mobile Device Center 6.1
    (WMDC) 已弃用。布雷特的回答中提供的链接不再有效。它可能可用,但我无法在 Microsoft 网站上找到该产品。
  • 2016 年的 Microsoft 支持线程指向一家名为 Juniper Systems (JS) 的制造商,该制造商托管 WMDC 的副本。
  • JS网站有一个教学视频值得一看。这里总结了主要步骤以及一些附加说明。
  • 下载并安装
    drvupdate-amd64.exe
    。这将为 Windows Mobile 开发以及 WMDC 应用程序本身安装驱动程序更新。顺便说一句,安装过程无需用户交互。
  • 下载并安装
    WMDC-fixes-for-Win10.msi
    。这将安装用于移动开发的补丁。这可能与 @Pierre 的答案类似,但 JS 没有透露细节,只是他们需要“在 Windows 10 上进行移动开发”。同样,安装不需要用户交互。
  • 上述安装添加了三个新服务:
    Windows Mobile-2003-based device connectivity (WcesComm)
    Windows Mobile-based device connectivity (RapiMgr)
    Windows Phone IP over USB Transport (IpOverUsbSvc)
    。全部设置为“自动(延迟启动)”。保留这些可能没有什么坏处,但我将其全部设置为“手动”。重启后部署仍然有效。
  • 上述安装添加了一个注册表项来启动 WMDC 应用程序:
    HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Windows Mobile Device Center
    。同样,保留这个可能没有什么坏处,但我删除了注册表项,在任务管理器中杀死了 WMDC 应用程序,重新启动,部署仍然有效,即 JS 视频暗示您需要运行 WMDC 才能进行部署,但这是根据我的经验不正确。可能是驱动程序更新或 Windows 10 补丁发挥了作用。
  • 对于从 VS2008 进行实际部署,您需要将与 VS2008 兼容的 ARM 连接工具复制到目标设备(例如使用笔式驱动器或 Visual Studio 内置的
    Remote Tools
    )。默认情况下,这些工具安装在:“C:\Program Files (x86)\Common Files\Microsoft Shared\CoreCon .0\Target\wce400 rmv4i”。我刚刚将整个文件夹复制到设备中。
  • 每次部署时,您必须在设备本身上运行
    ConmanClient2.exe
    CMAccept.exe
    。您有大约 120 秒的时间来完成部署,否则您需要再次运行它们。部署后,在 VS2008 或设备重新启动之前,您不需要再次运行这些。

希望对其他人有帮助。


-1
投票

我找到了我的问题:

在 Visual Studio 2008 中,您可以在“Windows Mobile 5.0 Pocket PC Device”和“Windows Mobile 5.0 Pocket PC Device R2”之间进行选择

我必须选择“R2”,然后它对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.