【发布时间】:2011-04-03 16:36:59
【问题描述】:
我有一个在 Visual Studio 2010 下编译的 exe 文件(它的源项目是带有 C# 的 Windows 窗体应用程序)。
我必须将此 exe 嵌入到 installsheild msi 安装文件中,并且它可以安装在任何 Windows 操作系统上(支持 XP 和更高版本)。但是为了运行我的 exe,最终用户首先必须在他们的系统上安装 Microsoft .net framework 4。
我正在寻找一种解决方案,将我的 .NET 本机 exe 转换为无需安装 .NET Framework 即可执行的 .NET-FREE exe。
有没有办法做到这一点? (我的意思是一种方式期望mono-project)
【问题讨论】:
-
即使在技术上可行(比如虚拟化注册表和磁盘,我什至没有提到支持问题...),许可证也会阻止您重新分发所需的 .NET 程序集。它们必须由 Microsoft 的官方安装程序安装。
-
问题是安装 .NET 框架还是升级它? SP2 之后的大多数 XP 版本都安装了 .NET,而所有以后的版本都将其作为基础包。如果它只是升级它的问题,为什么不使用单击一次来处理包确定?
-
最好尝试将 Microsoft 的 .NET 框架安装程序嵌入到您的设置中。恕我直言,每个 Windows 机器上都应该预装最新的 .NET 框架版本。