我需要人们对如何通过FTP更新ClickOnce应用程序的意见

我有一个C#应用程序,它通过一个数据库运行,它被不同位置的不同人使用。

每次更改时更新我的​​应用程序的最简单和最好的方法是创建ClickOnce应用程序并将其发布到服务器。 我的问题是我唯一可以拥有的服务器是FTP服务器,这里的问题是ClickOnce不支持从FTP服务器获取更新。 它支持更新到文件共享或Web主机。

所以我需要一些关于如何更新我的应用程序的意见。 有没有机会通过HTTP访问FTP服务器? 例如,不是输入myftp服务器来输入类似ftp的内容,而是重定向到FTP服务器。 这将拯救所有的喧嚣。

那么有人使用45.webmasters.com作为虚拟主机服务吗? 这是我的网站托管服务,我可以在网站上存储项目文件。 就像我可以创建一个目录并在那里保存应用程序的文件,但我不知道如何以编程方式访问此目录,以便在该位置发布。

你必须使用你的服务器吗?

如果不是,我建议您考虑使用Dropbox作为您的主机 – 它是免费的,您的应用程序可通过HTTP获得并发布它就像将其发布到您当地的Dropbox文件夹一样简单。

我一直在使用这种方法已有一段时间了。 当然,您可以使用其他服务 – 或者可以使用免费的webhoster。 ( AppHarbor浮现在脑海中。)

如果评论中的链接不再起作用,那么使其工作的关键点是:

  1. 找到您的公共URL(左键单击Dropbox中的任何文件,复制公共链接),它将以“ http://dl.dropbox.com/u/xxxxxx/ ”开头。
  2. 在Visual Studio中的项目属性中打开“发布”选项卡。
    • 作为“发布文件夹位置”使用Dropbox(子文件夹)的本地路径,通常在Windows 7下看起来类似于C:/Users//My Dropbox/Public (您可以使用任何您想要的子文件夹)
    • “安装文件夹位置”:将其指向http://dl.dropbox.com/u/xxxxxx/ <子文件夹>
    • “更新位置”:与上述相同, http://dl.dropbox.com/u/xxxxxx/ <子文件夹>
  3. 点击发布
  4. 现在将您的公共链接从Dropbox复制到.application文件并开始分发。

Michael S. Clark撰写的Blogpost描述了该程序 。

您无法从FTP服务器安装CLickOnce应用程序。 您只能从文件共享或使用http进行安装。

另一种廉价的替代方案是Windows Azure Blob存储,它很便宜并且效果很好。

http://robindotnet.wordpress.com/2011/07/18/host-your-clickonce-deployment-in-azure-for-pennies-per-month/