所以我有一个使用.NET 3.0的应用程序(工具)。当在仅具有.NET 2.0的计算机上运行时(如默认的Server 2008 R2安装),它会崩溃。
到目前为止,我所看到的是人们正在使用首先检查.NET版本的分流器。 有没有办法构建它或以某种方式添加一些清单,以便警告用户这个问题(并希望提示安装.NET)?
我知道这可以通过安装程序解决,但我有要求需要它作为独立的可执行文件。 (好的,这很难解释,但它与设备驱动程序有关。该工具附带驱动程序,但如果用户不使用该工具,则不应强制用户安装.NET 3.0。)
我只需要停留在一个神秘的“应用程序失败并出现异常0xe0434f4d”消息的位置,并且至少让用户知道发生了什么。
答案 0 :(得分:4)
尚未对此进行测试,但本文about framework detection介绍了如何从代码中检测框架版本。我不确定你的应用程序在哪里失败,如果注入这样的检查可以解决你的问题,但如果你不能在你的应用程序中使用它,你可能会在旧的.net 2.0中创建一个小的“启动应用程序”来执行这些检查,那么要么告诉用户升级还是启动“真正的”应用程序?
正如我所说,没有测试过这种方法,它只是我的想法。
答案 1 :(得分:4)
这对我来说没有任何意义。你要去哪儿?您是否还要确保用户不在Windows 98上安装它?机器有足够的RAM吗?用户帐户有足够的权限吗?
软件供应商发布系统要求。您始终引用支持的最低Windows版本,最小RAM量,所需磁盘空间,最小浏览器版本等。最低.NET框架版本也属于该列表。此列表的目的很明确:如果您不满足要求,请不要期望它正常工作。无论如何,如果你这样做,那就是你的问题,而不是我的问题。
对于消费者级应用,这是不同的。但是,当您安装到Windows 2008服务器时,您没有编写消费者应用程序。