问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

一个C#问题,比如说现在我用C#编出了个软件,在没有装vs的电脑上就不能运行?

发布网友 发布时间:2022-04-23 01:50

我来回答

5个回答

热心网友 时间:2023-10-10 16:46

所有的.net程序都是必须在.net 框架下运行的。正如同所有的windows程序必须用windows系统才能打开一样。每一个程序都有起运行的环境。
网上很多exe不需要.net就可以运行的,不是c#写的,有可能使用的是更低层的语言编译器,比如c++写的(即使是早期c++,也是基于windows的框架下,需要用到一些windows的环境的,而且有些dll是自己写的,也需要安装程序的,除非你能确保你所安装的那台电脑拥有你所需要调用的dll,大多数的软件都会有安装程序,用于确保所有的环境适合),也有java写的,还有基于flash环境的air程序等等,总之每一个程序都有一定的运行环境。如果没有合适的环境一样不能运行。以flash为例,每台机器都有安装flash吗,也并不全是吧,比如我们刚刚重做了系统有可能就没有flash插件,需要安装flash插件之后才能看flash一样的道理。
另外有一个误区,装vs不等于装了.net框架,虽然vs安装之后会安装.net框架,但vs是编译器,而.net框架是一些dll的库文件。要理解库文件的概念,你还要从早期的c++时代开始说起,每一个程序都是无数的库文件的堆积。没有这些库帮着你将程序和计算机连接,计算机就无法执行你的命令。
解决方案:
1、利用安装程序:vs不是自带着打包程序吗,用那个打包程序把你的程序打包成一个安装程序,安装之后就可以了。当然了你不喜欢vs的界面,也有一些人开发了其他的打包程序,我们称第三方打包程序,这些程序中其中就有能满足你所说的一个exe文件就行了的那种。当然其原理不过是在运行的时候将所需的文件暂时加载到内存或者硬盘中的一个临时空间中,运行结束,自动释放空间。本质上是和安装程序是没差别的。
2、找到缺少的dll文件,复制到你的exe程序所在的文件夹下。自己手动找文件吧,.net框架根据你程序执行所需要的功能会需要各种dll库,这种手动方式是很不方便的,而且容易出错。另外一个.net框架本身程序也不大,推荐还是用vs自带的打包吧。追问我不小心找了个更好的解决方案,就是利用VS打包设置,右击项目,点系统必备,然后选一下.NET Framework 4什么的,在安装软件的时候会顺便将要用的.NET Framework 4安装好,这样就可以直接打开了,嘻嘻

热心网友 时间:2023-10-10 16:46

是这样的,这种错误是因为目标电脑上没有安装 .NET Framework组件造成的,你可以在目标软件上安装该组件,然后就可以使用了。通常,你写的程序是可以在Win7的电脑上运行的,原因就是你的win7默认是安装了该组件的,但是Windows Xp则没有,需要用户自行安装。追问如果不安装.Net Framework怎么解决

网上很多exe文件不就是什么都不要安装就可以运行的吗?

vs怎么搞?

追答你用VS怎么搞都不行,它只负责编译,得到的exe文件格式是PE32+的,而不是那种直接调用Windows API的PE32程序,你还是对.NET 的架构不是太熟悉。如果不安装.NET Framework,似乎有专门的软件将依赖项打包到一个文件下面,但是这种软件我记不得叫什么名字了,你可以自己搜索一下。

热心网友 时间:2023-10-10 16:47

此exe非彼exe,你要是用vb6、c语言、c++编程,那exe一般可以直接运行,当然不排除也有少量电脑没有安装相应的支持库;
.net平台开发的exe虽然看起来一样,但是构造大大不同,你没有注意到哪exe的图标都不同吗?必须在目标电脑上安装了.net framework框架才行的。

热心网友 时间:2023-10-10 16:47

补充一下楼上大牛的回答,SteupFactory,搜一下吧。希望能帮到你。追问我的是 eliang-1.0.1

热心网友 时间:2023-10-10 16:48

需要安装 .Net Framework
查看你在.Net Framework如个版本上写的程序,就安装哪个版本的 .Net Framework追问如果不安装.Net Framework怎么解决

网上很多exe文件不就是什么都不要安装就可以运行的吗?

vs怎么搞?

追答它们不是.Net程序,或者已经安装了正确版本的.Net FrameWork
解决办法就是在目标机器上安装 相应版本的 .Net Framework,这也是最简单的办法,大部.Net程序也都是这么做的.

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
微信添加陌生人会显示我的微信号还是手机号还是都显示 苏州大学生工作补贴到哪里领取 苏州如何申请大学毕业生租房补贴 谁有日剧 贤者之爱 的资源,百度云,谢谢 桂林特产什么水果 您知道王俊凯的手机号码吗? 王俊凯私人微信号是kaige9907吗? 王俊凯微信号 王俊凯的微信号码是多少,要真的微信号码 qq闪动头像怎么设置(qq闪动头像怎么设置的) 2017全国各地GDP年报出炉各省份排名如何? 中行个人网银跨行资金归集被拆为多笔的原因是什么? 瓜的反义词有什么字 VS2010运行库是什么 我国gdp省份排名情况是怎样的?增速变化如何? 关于微软VS运行库合集 中国民生银行个人资金归集怎么操作 冒险岛35-50玩具塔组队任务攻略 vs写windows应用程序需要安装什么? 全国GDP省份排名是怎样的? 泰迪犬老是用前瓜刨 如何正确认识gdp及绿色gdp排名 vc6.0,visual c++2010和visual studio什么区别 中国银行网银和手机银行里,跨行资金归集操作为什么被拆成了多笔?_百度... 白瓜有什么好处 白瓜的营养价值 全国省份GDP排名~谁答案准确就给谁分~ 中国银行跨行资金归集操作为什么被拆成了多笔? visual studio 2010 编译出的所有程序都必须有.net支持库支持吗 有什么方法才能把黄瓜切成薄片? 跨行资金归集操作为什么被拆成了多笔? 冒险岛 玩具塔101层任务攻略 光大银行个人网银中的资金归集功能是做什么的? 中国省份按经济排名 Visual Studio 2008 中的VC++和VC6.0有什么区别? vs2008 生成的EXE运行问题 2019年各省市GDP排名是什么样的? 在公司中,资金归集是什么意思? vs2013用c#做的项目如何让它在安卓手机上运行?用vs015编译后可以吗? VS2010上用的是.net framework 4.0的库,怎么让 2.0的dll文件在这上面运 ... 请问Visual Studio 2008能开发VB6程序吗? VS2017无法运行!无法安装! C++标准库主要就指STL吗? vs2010c++是c语言还是c#或是c++? 编程软件VS是什么? VS2010下建好的工程可能是用到了2010的动态运行库,现在在VS2013版本上跑不通,怎么解决 编程中VS是什么意思 求VJ素材网站 谁给几个VJ素材网址 很多人都推荐VJ师网这个视频素材专业下载网站,这个网站真的有那么好吗? 哪里有免费的VJ素材下载!拜托了各位 谢谢