2010-12-02 132 views
4

如果我编译一个简单的(没有额外的库或程序集)c#应用程序,我可以假设它可以在任何新的Windows 7机器本机运行,或者我必须担心最终用户拥有.Net或安装了其他库?在Windows 7上运行ac#项目

回答

8

Windows 7包含.NET Framework 3.5.1作为操作系统组件。

这意味着你将得到:

  • 的.NET Framework 2.0 SP2
  • 3.0 SP2
  • 3.5 SP1
  • 一些后3.5 SP1 bug修复

但是,如果我们正在使用.NET的新版本,如果您使用的库不能满足上述要求,那么您仍然需要考虑将它们打包成一个n MSI /安装程序。

在维基百科这个页面有一个很好的总结:

http://en.wikipedia.org/wiki/.NET_Framework#Versions

如果这是什么,多了一个“快速和肮脏”的应用程序更多,或者除非你在一个地区工作,在那里你确切地知道目标机器看起来像(即一个锁定OS镜像的企业环境),那么我建议你考虑建立一个安装程序,并根据需要处理先决条件。 (WiX是我推荐的方式)。

http://wix.sourceforge.net/

而且WiX的问题,在这里标记在SO ...

https://stackoverflow.com/tags/wix/

5

Windows 7预装了包含3.5 SP1的.NET 3.5.1,因此除非您需要.NET 4的特性,否则它应该可以正常工作。

+1

我认为有可能使用“添加/删除Windows功能对话框”删除框架,所以你可能想要打包安装程序,以防万一。 – 2010-12-02 14:37:11

1

您需要安装适当的.Net框架以匹配您的C#程序编写的内容。如果您没有正确的框架,请从microsoft.com下载。