【问题标题】:C# getting my program to run on a .Net 1.1, win XP systemC# 让我的程序在 .Net 1.1、win XP 系统上运行
【发布时间】:2020-06-26 12:16:27
【问题描述】:

所以我在 c# 中将 Windows 10 Visual Studio 版本 10 上的程序作为控制台应用程序。该程序只是使用 fsw 监视文件更改。我现在面临的挑战是尽我所能,不必在必须运行该程序的 PC 上安装任何东西(因为在公司,他们通常不喜欢我们在旧电脑上安装任何东西) .所以我相信如果可能的话我需要在较低版本的.Net中编译程序? 任何有关此事的帮助将不胜感激,因为我发现大多数事情是人们希望从 1.1 迁移到更高版本或对 Web 应用程序或 c++ 的奇怪引用。 另外,(尽管可能很明显)我不是编码员,甚至不是我的工作,因此我很缺乏经验,因此任何被简化的答案都会非常有用。 提前致谢!

【问题讨论】:

  • .NET Core 自包含应用程序甚至可以在 Windows 3.1 上运行(带有某些 hack),因此您可能应该使用它(尽管在 Windows XP 等报废系统上完全不支持)。
  • Visual Studio 10 是否能够创建自包含的 .Net 应用程序?我已经看到在更高版本上发布的选项,但在 VS 10 中没有任何简单的方法? @LexLi

标签: c# visual-studio-2010 build filesystemwatcher .net-1.1


【解决方案1】:

首先,如果您还没有安装 .Net 框架,请检查是否已安装,在这种情况下是什么版本。

根据.Net version and dependencies,windows XP 不包含任何.Net 版本。该页面还包括有关如何检查版本的链接。 Windows XP 的最后一个 .net 版本是 .Net 4.0。见.Net system requirements

因此没有迹象表明您应该使用 .Net 1.1。要么您使用安装的任何版本,要么安装您想要的某个版本(即支持的最高版本),或者您不安装任何版本,然后执行其他操作。

现代版本的 Visual Studio 允许从 2.0 及更高版本开始定位 .Net 框架。而且我相当确定如果您安装了框架,您可以在 Windows 10 上运行 .Net 2.0 及更高版本。使用 .Net 1.1 可能需要您使用 windows XP 作为开发系统,所以我会尽可能避免这种情况。

我建议使用虚拟机进行测试,因为它允许您在您的机器上在 Windows XP 上进行测试,并且可以轻松恢复任何故障。我可能会建议尽可能将整个 PC 迁移到虚拟机,因为这将减少硬件故障的严重程度,并使备份和恢复更加容易。

【讨论】:

  • 感谢您的详细回复。不幸的是,我当然不会获得升级框架的许可,因为它的所有旧系统都用于运行机器,他们不会冒险让程序不再工作,并且在检查 regedit 时我发现目标系统绝对是 .Net 1.1 .我无法虚拟化这台机器,因为它一直在运行,所以我没有这样做的权限,但是我相信我有一个不同的 winXP 虚拟软件,所以可能不得不作为最后的手段尝试在那里安装 VS10 .虽然首先我会考虑让它自给自足。
  • @Simpson Joshua 听起来公司没有适当的机器备份程序。如果它对业务至关重要,那似乎是非常危险的。不过可能不是你的问题。
  • 我之前做过winXP虚拟机,会考虑使用,但是经过进一步研究,VS2010不再支持2.0之前的框架?我发现最接近任何东西的方法是带 MSBEE 的 vs2005,但那是真正的解决方法,我读过虽然你可以查看和运行代码,但它无法编译?这将是整个目的。您是否会碰巧知道使框架程序自包含的任何方法,或者我是否正在研究一项现在复杂的转换为核心的工作? @JonasH
  • 据我所知,.net 框架总是需要安装。我认为转换为 .Net 核心不会很复杂,因为代码大部分相同,可能比处理 .Net 1.1 更容易。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-01-15
  • 2018-04-10
  • 2012-04-15
  • 1970-01-01
  • 2015-03-03
  • 2015-12-08
  • 1970-01-01
相关资源
最近更新 更多