目前,我的应用程序的所有用户都安装了.NET 2.0,并通过ClickOnce启动它。用户启动此应用程序的方式是单击IIS中引用.application文件的其他页面中的链接。此外,一些用户的桌面上有一个指向同一链接的快捷方式。
我最近将我的应用程序升级到.NET 4 CP,我需要创建一个新的部署。问题是大多数用户没有安装.NET 4,所以在这个新部署中我必须确保提示他们安装它。
如果我只是部署它并要求用户打开新的ClickOnce链接,则会显示一条消息,说明他们需要拥有.NET 4,然后“联系您的系统管理员”。我生成了引导程序,但因为应用程序直接通过.application文件启动,所以我认为它不会起作用。
我唯一的解决方案是创建另一个在.NET 2.0中开发的ClickOnce应用程序,并作为“启动器”使用。这个小应用程序将检查是否安装了.NET 4。如果是,则启动新应用程序(另一个链接),否则启动.NET 4安装程序并要求用户在重新启动后再次尝试。
我希望为用户提供更简单的流程,有谁知道?创建自定义安装程序似乎无法解决我的问题,因为它必须在尚未安装的.NET 4中运行。
答案 0 :(得分:1)
This msdn article表示如何从useragent字符串中检测.net版本。根据这一点,您可以将链接添加到4.0 clickonce应用程序或引导程序。然后,您还可以在页面中解释链接将启动安装程序,而不是应用程序。
不,我自己从未这样做,所以没有guarentees .....
答案 1 :(得分:0)
转到项目属性,然后选择publish tab
,然后单击PreRequisites
,然后选择.Net Framework 4.0,然后选中“从与我的应用程序相同的位置下载先决条件。”