用户需要什么来运行C#控制台程序?

4
我使用Visual C# 2008 Express制作了一个控制台游戏,整个游戏只使用System命名空间中的内容,没有花哨的第三方库,并且它所需的仅是两个文件夹来存储它创建的XML文件,这些文件夹位于根目录下。我甚至可以进入Debug文件夹,复制应用程序和2个文件夹并将它们粘贴到其他位置,它们也能正常工作。因此,我想我可以将游戏作为压缩文件分发。
我想知道的是,没有安装Visual Studio的最终用户运行该游戏需要什么最少要求?我看了一下我的非程序员朋友,她的已安装程序列表中有超过10个带有“Microsoft Visual”名称的项目,例如.NET框架和Redistributable Package。我不知道这些都是干什么用的。
5个回答

9

他们需要安装Microsoft .NET Framework - 无论您使用哪个版本,或更高版本。就这样。

现在大多数Windows用户可能已经安装了至少.NET 2,并且很可能安装了更新的版本。如果没有,您可以指导他们下载和安装可再发行文件。

不需要任何名称中带有“Visual”的内容。

.NET 3.5及更高版本的一种选择是针对您的项目目标"客户端框架" - 这是终端用户的较小下载。


@Varun:我不太确定你的评论是针对什么的...你所说的“滥用”是指什么? - Jon Skeet
我的意思是,如果你看一下我提供的答案,我认为它符合SOF的政策。任何问题都应该有一些思考和研究。我提供的链接是关于SOF的另一个问题,该问题已经涵盖了整个Q&A。而且“滥用”不是你的错,而是喜欢你的追随者(包括我)。 - vvohra87
说实话,我作为SOF的新成员(虽然已经用它作为参考几个月了),对自己不是很有信心 - 我知道你在这里很有名,所以我应该问一下(因为我不知道):如果我看到一个之前已经被回答过的问题,我应该提供答案还是指向其他问题? - vvohra87
@Varun: 通常最好在问题中留下评论,这样那些有足够声望可以投票将其关闭为重复的人就可以这样做。当你有足够的声望时,你应该自行投票将其关闭。 - Jon Skeet
很酷的东西,会做!顺便问一下 - 你有没有考虑尝试Ruby或Python?我喜欢C#,但是托管成本让我的公司和客户付不起!! - vvohra87

2

.NET框架对于每个C#程序都是必不可少的。.NET框架包含您使用的那些命名空间。据我所知,您不能安装其中的一部分,只能全部安装。

但是在存储文件时要小心。通常情况下,您的程序将被安装在程序文件夹中,普通用户没有写入权限。请使用%APPDATA%特殊文件夹来存储程序必须编辑的任何数据文件。


有一个特殊的 .NET 客户端配置文件,可以让您选择性地安装框架的部分组件。 - vvohra87
1
好的,谢谢你……通过改变我的知识来否定我的答案。 ;) - GolezTrol
哇,我居然得到了赞,而Jon Skeet也发表了回答。:s - GolezTrol
可悲的是,即使我的答案完全符合网站的道德规范,也被完全忽视了。这个问题在我提供的链接中已经被回答了10次... - vvohra87

1

如果您在创建应用程序时使用了.NET Framework,并且您没有使用刚刚安装到目标PC上的第三方组件。

祝好。


1
请参考C#应用程序部署问题在桌面环境下的解决方案。 编辑:它有关于为桌面部署C#应用程序的最佳实践的有趣答案。
对于您的具体问题,我认为Jon在他的回答中已经完美地总结了。不需要任何与“Visual”相关的内容。 编辑结束 干杯!

嗯,我在链接的问题中没有看到任何关于需要什么样的.NET本身或客户端配置文件等方面的要求。我认为这里大部分答案实际上提供了更有用的信息针对这个具体的问题,即讨论是否只需复制可执行文件即可工作 - 如果框架已经安装,则比使用部署/设置项目简单得多。 - Jon Skeet
@Jon Skeet:最有趣的事情是-我刚刚审查了那个问题线程,现在才注意到您也在那里回答了!!对于答案的“特定性”,我认输了。 - vvohra87

0

您也可以针对不同的框架进行定位。如果您不需要 .NET 4.0 的功能,请针对 .NET 3.5 进行定位。如果您甚至不需要 .NET 3.5 的功能,则请针对 .NET 2.0 进行定位。这样,只安装旧版本的用户也能够玩游戏。他们无需安装任何 Visual Studio 版本!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接