任何想要运行您的程序的人都需要安装适当版本的 .NET Framework。没有办法解决这个问题。老实说,这个问题被问到的频率让我感到惊讶。您不能将 .NET 代码编译为任何类型的“本机二进制文件”,也不能只分发您需要的框架部分。如果所有这些对您来说都很重要,那么您一开始就应该选择不同的开发平台。
您唯一的选择是将 .NET Framework 与应用程序的安装程序捆绑在一起。使您的客户最容易做到这一点的方法是使用 Visual Studio 创建一个安装项目,如果他们还没有 .NET 固件,它将自动安装它,然后安装您的应用程序,所有这些都在一个步骤中完成。
Visual Studio 内置了对创建此类安装项目的支持,并且大部分繁琐的工作都会为您处理。文件 -> 新项目 -> 其他项目类型 -> 设置和部署 -> Visual Studio 安装程序。然后,选择“设置项目”或“设置向导”选项,然后按照说明进行操作。
自从您为 .NET 4.0 开发以来,唯一需要记住的是该框架有两个版本:完整版和“客户端配置文件”。客户端配置文件试图完全按照您提到的方式进行操作,并且只安装典型应用程序使用的框架部分。您必须首先弄清楚这是一个适合您的部署选项。如果您的程序使用客户端配置文件中不可用的类,则需要安装完整版本。否则,您可以考虑安装客户端配置文件,这是 VS 2010 中所有面向 .NET 4.0 的新项目的默认设置。在项目属性下检查应用程序的“目标框架”设置。如果它尚未设置为客户端配置文件,请尝试更改它并查看它是否会编译。那' s 判断此部署选项是否可供您使用的最快方法。但是这两个框架之间只有大约 15% 的大小差异,所以如果您必须部署完整版本,这并不是什么大问题。
无论哪种方式,安装项目都会自动为您的应用确定并捆绑正确的版本。绝对不要让用户单独下载和运行 .NET 安装程序。使用设置项目并自动为它们执行此操作。如果您没有 VS 或不想使用它提供的那个,请研究替代方案,例如Inno Setup,它还支持使用应用程序部署和安装 .NET 运行时。