我写了一个我需要分发到700多个计算机的小型应用程序,问题是,使用任何版本的.NET框架可以运行任何版本的Windows(尽管很可能很可能XP或更高),该框架都安装了Internet Connections。拨号。

我考虑使用我的应用程序捆绑.NET,但.NET安装程序至少为39MB,这实际上将需要拨号的人花费数小时。

因此,我是否可以将应用程序需要的特定DLL捆绑或将整个内容转换为本机代码?

谢谢 - 迈克

有帮助吗?

解决方案

使用安装程序。

Microsoft提供了一个基本解决方案,因此您可以检查依赖项(如果缺失,并安装它们),以确保您正在部署应用程序的计算机以满足应用程序的最低框架(和依赖关系)要求。

如果您需要更复杂的东西,则可以使用 nullsoft脚本安装系统, installaware, , 或者 installshield.

请记住,如果您要创建.NET应用程序,则用户将需要以一种或另一种方式安装运行时。安装程序不强迫您将.NET安装程序与应用程序捆绑在一起,从而使事情变得不错。它将允许用户在安装时下载.NET运行时。

如果要删除对.NET框架的依赖性,那么您将不得不将应用程序重写为将其编译成本机代码的内容(即使没有安装框架,也无法使用NGEN)。

其他提示

可以做到这一点,但不是一种简单或便宜的方法。

例如,请参阅http://www.remotesoft.com/

如果他们没有所需的运行时环境,则使用.NET解决方案几乎是不幸的。使用安装程序,如果不存在,则可以安装适当的运行时环境。

确实,如果您绝对担心人们下载部分框架,那么最好的选择就是不要使用它。在用本机代码重写应用程序之前,我真的会看您的听众,看看他们没有它的可能性以及它们的连接速度是多少。

如果您不想在本机代码中编写它,则您的另一个赌注是使用较低版本的框架。 1.1的市场渗透比说4.0要大得多。

维基百科 (不是绝对权威,而是通常对这种事情可靠):

Windows Vista包括.NET框架的3.0版。

因此,Windows 7也将包括此。

因此,这确实是您需要担心的XP客户。

最近,我不得不重新安装Windows XP,当我获得SP3和所有后续补丁时,我还安装了.NET 3.5。尽管当我安装Visual Studio时,我不能100%保证每个人都会安装了.NET的必要版本,但是这将是一个很大的比例,因此您可能会过度担心。

不要使用.net。如果您无法控制环境,需要广泛的分发,并且不想需要30 MB下载,那么您几乎使用本机代码就被卡住了。最好的选择是C ++。

另外,正如其他人所建议的那样,您可以尝试使用诸如远程软件之类的东西。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top