首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C#程序的自动更新

C#程序的自动更新
EN

Stack Overflow用户
提问于 2010-10-04 02:28:31
回答 2查看 1.7K关注 0票数 8

我正在为客户电脑编写一套程序--

  • Windows服务
  • 用户空间Windows窗体应用程序

我需要能够发布这些程序的更新版本,并使客户端PC自动和透明(没有用户交互)更新自己。此更新将在不可靠的3G连接(EvDO)上完成。应用程序将持续运行,因此更新必须优雅地关闭服务/关闭应用程序,然后在更新后再将它们旋转。

在我花时间讨论我自己的解决方案之前,是否有任何类似的解决方案?

注意:由于Windows以及其他几个原因,ClickOnce在这里无法工作。我也不能利用BITS,因为我运行的是Windows,它缺少IIS插件。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-10-04 02:38:51

为什么不考虑影子复制。

影子复制使应用程序域中使用的程序集能够在不卸载应用程序域的情况下进行更新。这对于必须连续使用的应用程序(如ASP.NET站点)尤其有用。

使程序变得非常简单。然后让他们监视(FileWatcher)从哪里加载的文件夹的更新(以及传递更新的位置)。然后动态地重新加载AppDomain。

有关更多信息,请参见这里这里

您可以使用AppDomainSetup类的属性(如下所示)来配置用于影子复制的应用程序域: 通过将ShadowCopyFiles属性设置为字符串值"true“来启用影子复制。默认情况下,此设置将导致应用程序路径中的所有程序集在加载之前被复制到下载缓存中。这是由公共语言运行库维护以存储下载的文件的相同缓存.

票数 9
EN

Stack Overflow用户

发布于 2010-10-04 07:22:42

我遇到了两个最好的资源(这两个资源都使用位,它可以处理不可靠的连接)。

  • 用.NET和后台智能传输服务API编写自动更新应用程序
  • .NET客户端应用程序:.NET应用程序更新器组件
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3852486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档