如何在没有.Net Framework的情况下运行C#Exe

时间:2011-09-30 13:24:02

标签: .net

我正在使用Visual Studio 2010。 我做了一个C#项目,它在我的电脑上完美运行。

问题是当应用程序在另一台计算机上运行时,要求.Net Framework。 每个人都没有管理员Access来安装.Net Framework,人们也不想安装它。

我应该采取什么替代方案来解决这个问题? (特别适用于Windows 7)。

6 个答案:

答案 0 :(得分:17)

Windows默认包含.NET版本。这是他们的列表。

  

XP

     
      
  • .NET v1.0 - Service Pack 1
  •   
  • .NET v2.0 - Service Pack 2& 3
  •   
     

Vista的

     
      
  • .NET v3.0 - 所有服务包
  •   
     

Windows 7

     
      
  • .NET v3.5 - 所有版本和服务包
  •   
     

Windows 8

     
      
  • .NET v4.0 + Metro UI 可用。
  •   
     

Windows 8.1

     
      
  • .Net v4.5 + Metro UI 可用。
  •   
     

Windows 10

     
      
  • .Net v4.6 + Metro UI + Universal Apps 可用。
  •   
     

注意:

     

如果启用了 Windows Update ,则全部包含 .NET v4.6 。 (不适用于所有版本的Windows)

部署选项:

  

部署有多种选择。

     
      
  • 在安装中检查.NET。 (NSIS等安装系统支持此功能)。   有关详细信息,请参阅this

  •   
  • 如果要部署便携式应用程序,请通知用户安装所需的.NET版本。 (容易)

  •   
  • 目标.NET 2.0,所有用户都可以运行您的应用程序,因为我认为没有人使用XP SP1。 (最简单。我用它来部署我的。)

  •   

修改

其他一些答案需要一些清晰度,所以我引用this维基百科说明。

  

.NET Framework 1.0是Windows XP Media Center版或Tablet PC版的完整操作系统组件。家庭版和Windows XP SP1,SP2或SP3专业版的安装CD随附.NET Framework安装包。

答案 1 :(得分:5)

没办法!托管应用程序绝对需要CLR。

答案 2 :(得分:3)

唯一的选择是不使用基于.net框架的编程语言。

如果您正在编写c#应用程序,则需要使用.net框架。

也许您想要创建一个c ++应用程序?

答案 3 :(得分:2)

如果您的目标是Windows 7或更高版本的操作系统,那么只需使用C#3.5编译您的程序即可。该框架的3.5版本是Windows 7的一部分。

我猜你是在编译C#4.0代码。

答案 4 :(得分:1)

如果我错了,请纠正我,但Windows 7安装了.Net框架。 Windows Vista附带安装的.net框架,我相信这对Windows 7也有效。 并回答你的问题 - 在没有框架的机器上运行exe是不可能的,因为程序编译为只有公共语言运行库(CLR)“可理解”的中间语言

答案 5 :(得分:0)

是的,有Spoon(较早的XenoCode)可以包装您应用程序所需的所有内容并作为独立程序运行。

在他们的网站上:

  

Spoon Studio

     

轻松虚拟化所有应用程序,以便即时,   在Spoon Server和Spoon.net上实现零安装交付。

     

Spoon Studio可让您将现有的软件应用程序转换为虚拟应用程序   无需安装,冲突或依赖即可运行。