Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 关于创建应用程序更新系统的指导和意见_C#_.net 3.5_Winforms_Auto Update - Fatal编程技术网

C# 关于创建应用程序更新系统的指导和意见

C# 关于创建应用程序更新系统的指导和意见,c#,.net-3.5,winforms,auto-update,C#,.net 3.5,Winforms,Auto Update,我只是想找出一个很好的解决方案,为我创建的windows窗体应用程序设计更新过程。我想到了应用程序内部的一个按钮,用于手动检查更新和启动应用程序时检查。只是我不熟悉工艺。我想把更新设置文件放在FTP服务器上,然后用一个包含文件名和版本信息的txt文件检查服务器是否有更新。应用程序下载完更新后,关闭并启动更新设置文件 对这个问题有什么建议和意见吗?最近的应用程序更新是必要的弊病之一。考虑到自动更新的应用程序,我倾向于将它们分为两类: 干净的更新,一个月一次或更少的频率,一个没有很多唠叨或点击的快速

我只是想找出一个很好的解决方案,为我创建的windows窗体应用程序设计更新过程。我想到了应用程序内部的一个按钮,用于手动检查更新和启动应用程序时检查。只是我不熟悉工艺。我想把更新设置文件放在FTP服务器上,然后用一个包含文件名和版本信息的txt文件检查服务器是否有更新。应用程序下载完更新后,关闭并启动更新设置文件


对这个问题有什么建议和意见吗?

最近的应用程序更新是必要的弊病之一。考虑到自动更新的应用程序,我倾向于将它们分为两类:

  • 干净的更新,一个月一次或更少的频率,一个没有很多唠叨或点击的快速更新。而且绝对没有像工具栏和桌面搜索程序这样的偷偷摸摸的软件。。。Firefox倾向于对更新“友好”,尽管它的插件可能很唠叨
  • 另一个组经常唠叨,需要大量的按钮点击,或者需要重新启动,需要很长时间才能“解包”(AdobeAcrobat,看着你),根据你的意愿更改设置(Java),或者通常是令人不快的
  • 考虑到这些要点,将自动更新设计为尽可能友好的用户,并计划用户有时希望跳过更新(除非对操作至关重要)

    在我的公司,我们有一个需要更新的小应用程序,但也必须在时间非常敏感的环境中运行。为了便于更新,我们让it部门执行以下操作:

  • 启动时,在内部URL上检查文本文件(这可能是HTTP或FTP调用)。将版本号与文件内容进行比较
  • 如果软件是最新的,则不会执行更多操作。如果没有,将显示一个对话框,通知用户应用程序必须执行更新。(在我们的情况下,没有取消或等待的选项,但如果可以的话,我强烈推荐。)
  • 安装文件从同一站点下载,并通过Process.Start命令启动,使用一些开关执行无人参与的安装/更新
  • 应用程序在安装后启动,对用户的中断最小
  • 有些事情你可能想做得不同:

    • 如果在启动时不检查更新,请提供一个选项来计划更新检查或从(例如)帮助菜单手动执行更新检查
    • 如果可能,允许用户取消或延迟更新;没有什么比试图通过弹出对话框完成工作更令人沮丧的了,弹出对话框要求您每隔几分钟执行一次更新
    • 请确保在部署之前测试安装包或修补程序!(经验之声!)
    使用ClickOnce


    亲切问候。

    非常感谢你的建议