自动更新C#Windows窗体应用程序

我希望我的应用程序自动检查更新并在需要时更新应用程序。 我安装了InstallShield限量版,但是当我进入更新部分时,我发现我需要安装FlexNet,这需要我购买它。

我发现Windows已经停止支持Windows Installer,这就是为什么在Visual Studio 2013中它没有在安装和部署部分中列出。

我还读到了ClickOnce,但是当我尝试将我的应用程序部署到FTP服务器时,存在一个小问题。 它询问了用户名和密码,但它添加了一个警告,这些值将以纯文本forms出现! 所以我该怎么做? 是否有另一种第三方方式来创建安装程序并设置自动更新?

我已经将ClickOnce与几十个应用程序一起使用,并且从未见过用户名/密码提示。 我的流程是:

  1. 声明该应用程序是从“ http://www.yourSite.com/yourApp/ ”下载的
  2. 在您想要的任何位置发布到“yourApp”文件夹
  3. 将整个文件夹拖放到服务器上的WWW空间中
  4. 通过电子邮件向用户发送链接“ http://www.yourSite.com/yourApp/yourApp.application

对于更新,只需重复此相同的过程(除了通过电子邮件发送用户),其他所有内容都会自行处理。 请务必选中应用程序设置中的框,告诉它检查当然是否有更新。 我已经将ClickOnce与几十个应用程序一起使用,并且从未见过用户名/密码提示。 我的流程是:

  1. 声明该应用程序是从“ http://www.yourSite.com/yourApp/ ”下载的
  2. 在您想要的任何位置发布到“yourApp”文件夹
  3. 将整个文件夹拖放到服务器上的WWW空间中
  4. 通过电子邮件向用户发送链接“ http://www.yourSite.com/yourApp/yourApp.application

对于更新,只需重复此相同的过程(除了通过电子邮件发送用户),其他所有内容都会自行处理。 请务必选中应用程序设置中的框,告诉它检查当然是否有更新。

有关用户名和密码的提示仅适用于部署期间。 所以我不会使用他们的Wi-Fi在星巴克使用FTP部署应用程序,但它应该在工作或在家里的私人网络上很好。

考虑一下:

  • 如何:管理ClickOnce应用程序的更新
  • 如何:使用ClickOnce Deployment API以编程方式检查应用程序更新

您可以使用Web服务器分发应用程序,甚至您的应用程序也可以从网页中的链接运行。

您还可以使用代码检查更新。