如何使用命令行在 Windows Mobile 模拟器中重建 .net CF 应用程序和部署

Posted

技术标签:

【中文标题】如何使用命令行在 Windows Mobile 模拟器中重建 .net CF 应用程序和部署【英文标题】:How to rebuild .net CF application and deploy in windows mobile emulator using command-line 【发布时间】:2011-03-28 06:43:23 【问题描述】:

有没有办法重新构建一个 c# .net CF 应用程序并将其从命令行部署到 windows mobile 模拟器中?

这是为自动化创建 bat 文件所必需的。

我看过http://msdn.microsoft.com/en-us/library/aa188169(VS.90).aspx,它提到了如何从命令行使用模拟器,但没有提到如何在其中部署应用程序。

谢谢,

维姬

【问题讨论】:

+1 - 我需要知道后半部分 - 如何自动部署可执行文件(构建很简单)。 【参考方案1】:

我刚刚尝试调用devenv with the /deploy switch 告诉它部署到目标,它工作得很好:

devenv /deploy Release "MySolutionName.sln"

【讨论】:

【参考方案2】:

涉及两个步骤:

    使用设备模拟器管理器 (DEM) API 启动模拟器 使用 RAPI 或 RAPI2 远程执行目标应用程序

1。使用 Device Emulator Manager API 启动模拟器

要以编程方式启动您的模拟器,您需要使用设备模拟器管理器 (DEM) COM API。要从 .NET 执行此操作,您需要使用 Microsoft.DeviceEmulatorManager.Interop.9.0.dll Primary Interop Assembly,它应该可以在此处找到(假设您的操作系统是 64 位):C:\Program Files (x86)\Microsoft Device Emulator\1.0

虽然您可以直接使用提供的 PIA,但从自定义外观访问 DEM API 要容易得多;幸运的是,已经编写了一个很好的包装器,可以从 MSDN 获得,以及一些关于 API 的重要信息:How To: Programmatically Control the Windows Mobile Device Emulators from .NET - MSDN

注意:必须“对接”模拟设备,然后才能使用 Remote API - 不要忘记这一步!

DEM 文档:

Device Emulator Configuration Files - MSDN Device Emulator Manager - MSDN

2。使用 RAPI 或 RAPI2 远程执行目标应用

一旦您保证您的模拟器正在运行并“停靠”,您就可以继续通过远程 API (RAPI) 与它进行交互,从而允许您将已编译的可执行文件上传到设备并远程执行它。以下是 RAPI 使用的几个示例:

Communicating with a Device from the Desktop (C#) The RAPI Demo Example (C++) Simple CE synchronisation utility with Python features (IronPython). A demo of the Windows CE Remote API (IronPython)

RAPI 文档:

Remote API (RAPI) - MSDN Remote API 2 (RAPI2) - MSDN

结论

这将为您提供拼凑一个简单的 CLI 应用程序所需的一切,以便在给定的模拟器上以编程方式启动给定的应用程序。如果您有任何问题,请发表评论。

【讨论】:

虽然这是一个经过充分研究的答案,其中包含很好的信息,但它实际上并没有回答“如何从命令行重建和部署”的原始问题。只需调用 devenv 步骤就少了很多,并且可以满足提问者的要求。 @ctacke:是的,看来我误解了 OP 的问题;我认为他正在寻找我所追求的东西,这是一种自动部署已编译应用程序的方法,而不依赖于源文件或 msbuild/devenv/etc。也许我应该发布一个我自己的问题并将这个答案移到它上面? 是的,如果您有这个问题,但它不在此处,请提出并回答自己。【参考方案3】:

要从命令行部署到模拟器,请参阅http://sevaa.home.sprynet.com/cedeploy/

【讨论】:

以上是关于如何使用命令行在 Windows Mobile 模拟器中重建 .net CF 应用程序和部署的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 CMAKE 从命令行在 Windows 上构建 x86 和/或 x64?

如何从命令行在 Windows 上运行 .class 文件?

如何使用命令行在Macos上打包Chrome扩展程序?

如何使用命令行在窗口 10 中设置 Qt5 静态

如何从命令行在 Microsoft Edge 中打开 URL?

在 Windows 7 上,Libreoffice 命令行在打开 DOCX 或转换为 PDF 时崩溃