如果某人没有运行应用程序所需的.NET框架,则显示自定义弹出窗口

时间:2010-09-14 12:37:00

标签: c# .net visual-studio

我为框架的第4版构建了一个应用程序。当我尝试运行时,它说:

  

为了运行应用程序,您必须首先安装以下版本的.NET框架:v4.0 [...]

这已经不是太糟糕但显示自定义消息会很棒,甚至可能会链接到最新版本的框架。

这可能吗?

4 个答案:

答案 0 :(得分:3)

没有直接的方法来自定义此消息。事实上,有关不受支持的框架版本的消息来自mscoree.dll(即系统上存在的mscoree.dll版本)。

你可以做的是用C ++编写自己的启动器,首先检查是否安装了所需的框架版本,可能会显示自定义消息,然后在启动器中显示host the CLR

答案 1 :(得分:1)

如果您的应用程序使用Windows安装程序包(Wix),那么请考虑将框架列为先决条件,这将让安装程序为您进行检查,并为用户提供下载框架的机会。

答案 2 :(得分:1)

它可能不是最好的安装机制,但是如果您创建ClickOnce安装程序,您可以为您的应用程序设置所需的.NET框架,如果它不在目标计算机上,它将下载并安装它。

答案 3 :(得分:1)

是的,这是可能的,但消息应该使用什么平台?

你需要一个引导程序,一个检查然后启动你的App的包装器。

如果可以假设安装了Fx2,则可以使用.NET 2应用程序进行引导。但是在未来你可能会看到PC有Fx4而不是Fx2。

因此,您需要一个非托管包装器来涵盖最广泛的可能性。