用C#编写的WINDOWS应用程序在客户端安装时候需要什么特别的安装环境?

来源:百度知道 编辑:UC知道 时间:2024/05/28 15:27:54
比如像一般的应用程序如迅雷、QQ、MSN等都是安装一个可执行文件即可,但我发现很多.NET程序都表明需要.NET FRAMEWORK的安装环境。
哪位高人能指点下其中的原理?
比如说,我用C#编写了一个类似MSN的桌面聊天工具,这是否意味着,用户如果希望顺利安装使用该聊天工具他的电脑上就必须安装有.NET FRAMEWORK?我们在进行应用程序部署即创建安装文件包的时候是否可以将.NET RRAMEWORK集成在该程序的安装文件包中?

如果这个C#应用程序是打包成安装文件的时候,这个文件会自动将所需要的.NET FRAMEWORK的组件自动装上.

如果并没有打包成安装文件的话,只是一个简单的c#应用程序,则客户端必须安装.NET FRAMEWORK.

因为C#本身并没有自己的类库,开发window应用程序时所应用的类均为.NET FRAMEWORK类库中的,比如说在.cs文件中导入命名空间 using System就是引用.NET FRAMEWORK类库中的类.

当然.NET FRAMEWORK并不仅仅是类库这么简单,它其实是微软开发的,主要用来产生一个可以用来快速开发、部署网站服务及应用程序的开发平台..

个人拙见,仅供参考.

.Net Framewrok 编写的程序都依赖于一个执行引擎 CLR 和 BCL(Base Class Library),没有这些就无法运行。

.Net 为我们提供了大量的可复用 组件/库,可以极大的减少我们的工作量,而不像 C 一样,都要自己造轮子。

打个简单的比方来说。
让一个 Windows 程序直接在 Linux 下运行是不可能的,因为他依赖 Windows 的许多动态链接库。

.net framework 是 所有.NET程序的基础, 没有 .NET FRAMEWORK, .NET 程序是无法运行的。

看来老弟没弄懂.net运行机理。framework 相当于java的jdk。实际上jdk包括的东西还要多一点。
运行环境。QQ msn等只需要安装就行。实际上有很多程序也不是开发的时候不用考虑什么。只是因为装包的时候把运行条件一起打包进去了。msn 8需要mxl3.0以上环境。那么这个环境城装的时候一起装进去了。如果你想实现像QQ一样,可以先把framework打包到程序里去。
另外说明的是,QQ是用c/c++写的。他所有的环境都集成在windows系统。他的com+ 所需的apI都是windows提供的,他只需要做个调用,或者直接接上去就行了。
我也不是很精通,但大多windows软件都是这样做的。