2010-01-27 93 views
3

我用C#编写了我的简单桌面程序。我不愿意将它发布到互联网上,因为我不确定用户是否会经历安装.Net Framework的痛苦。 我的目标用户是不懂技术的用户。.Net with single .exe without .NET Framework installation

我很熟悉MFC,我大概可以在一个月内写这个程序在MFC中。 MFC很好,因为我不必担心分发其他组件。这将是一个不错的单一可执行文件。

所以我真正的问题是:是否有可能写的.Net应用程序,而无需担心分发.Net框架?

更新 我发现了另一个解决方案:如果您使用的是Innosetup,则有一个安装.net框架的脚本。 http://www.codeproject.com/KB/install/dotnetfx_innosetup_instal.aspx

+0

此网站可能会派上用场,以减轻这种痛苦: http://www.hanselman.com/smallestdotnet/ – 2010-01-27 22:44:23

+0

您的“解决方案”仍涉及发布.net框架。 – nathanchere 2010-01-29 04:29:50

回答

2

如果你使用Windows安装程序,它可以自动安装.NET Framework所需的版本。此外,周杰伦是正确的,在.NET Framework 3.0安装在Windows Vista和版本3.5将包含在Windows 7

+1

当然,所有仍在使用XP的人都必须运行其他依赖于.Net框架的其他东西,因此已经安装了它。 – Earlz 2010-01-27 22:57:20

+0

根据我对“普通”计算机用户的经验,这是重点*不*真*。即使在2012年的风口浪尖上,我的beta测试中也没有一半安装.NET框架。 – 2011-12-27 00:37:04

0

是您的应用程式指定谁是不太可能已经安装了至少2.0的用户?

2

你可以用应用程序虚拟做到这一点。有一个视频演示如何使用Thinstall专门避免需要分发/安装.net Framework 2.0:http://thinstall.com/demos/dnet20/

我没有使用它,因为它被VMware购买,但肯定不会对产品造成负面影响。新产品页面:http://www.vmware.com/products/thinapp/

好的一件事是,一旦你有Thinapp/Thinstall'ed你的程序,客户不知道他们正在运行任何不寻常的事情。它仍然看起来像一个单一的EXE,但包含任何所需的依赖关系,可以安静地在后台加载。