是否可以使用F#单击一次部署?

时间:2011-11-22 11:14:23

标签: visual-studio-2010 f# clickonce

我打算在我的F#项目中使用Click Once,但似乎在VS2010中不支持 - 有没有办法让它工作?如果没有,会有什么替代方案?

销售人员将在没有互联网连接的Windows 7平板电脑上使用该应用程序。

我的想法是使用ClickOnce,以便他们可以每天早上/晚上(他们有互联网)检查更新,然后再去做销售(没有互联网)

3 个答案:

答案 0 :(得分:5)

在F#项目中没有针对ClickOnce的集成IDE级支持,但是......

一种可能的方法是通过ClickOnce发布C#应用程序,但将所有重要逻辑放在F#项目中,然后由(大多数是空的)C#shell引用。我过去曾多次这样做过,而且效果很好。

或者,.NET框架提供MAGE(及其GUI等效MAGEUI),用于构建和编辑Visual Studio中的ClickOnce清单 。使用这些工具虽然可行,但绝对不像IDE集成的等效工具那样“平滑”。

最后,有ClickOnceMore,它声称可以填充与MAGEUI相同的角色,但具有更好的功能集。就个人而言,我从未使用它,所以我无法发表评论。但是你现在有了。

答案 1 :(得分:4)

我使用this F# script自动调用命令行mage.exe来为我的F#项目构建ClickOnce包。我首先使用MAGEUI来手动构建* .application文件 - 脚本只更新文件列表和内部版本号,然后创建zip文件。

答案 2 :(得分:2)

我在使用ClickOnce部署基于F#的应用程序时遇到了困难。我终于开始工作了。我缺少的关键是:

默认情况下,fsc.exe编译器会将一个Win32清单添加到EXE。这会按照here所述打破ClickOnce部署。 F#应用程序的VS2010应用程序页面没有选项“#34;创建没有清单的应用程序"”。但是,Build页面确实有一个" Other flags"领域。我添加了' - nowin32manifest'。 Bang ...我的ClickOnce部署开始工作。