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

9

有没有一种方法可以通过命令行重建c# .net CF应用程序并在Windows Mobile模拟器中部署它?

这是为了创建一个批处理文件以进行自动化。

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

谢谢,

Vicky


+1 - 我需要知道后半部分 - 如何自动部署可执行文件(构建很简单)。 - Charles
3个回答

1

我刚刚尝试调用带有/deploy开关的devenv,告诉它部署到目标位置,结果运行良好:

devenv /deploy Release "MySolutionName.sln"


0

这里有两个步骤:

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

1. 使用设备模拟器管理器API启动模拟器

要以编程方式启动模拟器,您需要利用设备模拟器管理器(DEM)COM API。要从.NET这样做,您需要使用Microsoft.DeviceEmulatorManager.Interop.9.0.dll主互操作程序集,它应该在这里找到(假设您的操作系统是64位):
C:\Program Files (x86)\Microsoft Device Emulator\1.0

虽然您可以直接使用提供的PIA,但从自定义外观访问DEM API要容易得多;幸运的是,已经编写了一个很好的包装器,并且可以从MSDN获得一些关于API的重要信息:
如何:从.NET编程控制Windows Mobile设备模拟器 - MSDN

注意:在使用远程 API 之前,您必须先将模拟设备“停靠” - 不要忘记这一步骤!

DEM 文档:

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

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

RAPI文档:

结论

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


虽然这是一个经过深入研究并包含了很好信息的答案,但它实际上并没有回答原始问题:“如何从命令行重新构建和部署”。只需调用devenv就可以少走很多步骤,并且可以满足提问者的要求。 - ctacke
@ctacke:是的,看起来我误解了OP的问题;我以为他在寻找我所需要的东西,也就是一种自动部署已编译应用程序的方法,而不依赖于源文件或msbuild/devenv等。也许我应该发表自己的问题,并将这个答案移到那里? - Charles
如果你有问题并且这里没有答案,请提出问题并自己回答。 - ctacke

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接