1

事情是这样的:我正在计划一个绝对必须支持 Win2k的中型商业应用程序。AFAIK,对 Win2k 的官方 .NET 支持不久前被废弃(IIRC,它停止在 2.0 版)。

现在,我已经(很久以前)用 C++ 编写了库,它允许我完成最终结果(即完成这个项目),就像我在 .NET 框架的帮助下编写这个应用程序一样快——所以 .NET 的RAD 的“优势”几乎被否定了。

我敢肯定,这里有很多人处理需要支持旧操作系统的业务应用程序。那么,鉴于我的图书馆情况,使用 .NET 优于原生 C++ 对我有什么优势,反之亦然?我只是不确定两者中的哪一个适合这份工作——因为我似乎可以使用其中任何一个。再说一次,有那个框架支持问题需要处理......

如果需要,我很乐意添加更多信息。

4

6 回答 6

1

在 Windows 2000 下运行的最后一个 .NET 版本是.NET 2.0 SP2。它确实包含System.Core.dll(这是 .NET 3.5 的一部分)所需的功能。

答案是肯定的,如果您不打算使用.NET 3.0库(WCF、WF、WPF、CardSpace),则可以在 Windows 2000 下使用.NET 3.5 SP1 。但是你有 LINQ、LINQ to XML、LINQ to SQL。

您唯一需要做的就是部署三个核心.NET 3.5 SP1文件:

  • System.Core.dll
  • System.Xml.Linq.dll(LINQ to XML)
  • System.Data.Linq.dll (LINQ to SQL)

这种方法的缺点(仔细阅读):

  • 不确定 EULA(最终用户许可协议)是否允许或禁止
  • Microsoft 不支持此方案。
于 2009-05-04T21:48:04.513 回答
0

我想看看 Mono ( mono-project ) 是否适合你。即在win2k 上运行——如果它运行,它将允许您将您的应用程序移植到MS .NET 和更高版本的操作系统,以防项目后期出现需要。任何 .NET 都将比 C++ 恕我直言:)

于 2009-05-04T21:09:56.587 回答
0

最大的不同是,在您开始做其他事情之后,您(或您的老板)更有可能找到开发人员来维护您的 .NET 代码。

C++ 具有为您提供工作稳定性的优势——尽管这可能不是您想要的。:)

于 2009-05-04T21:12:21.743 回答
0

我认为,鉴于您的情况,归结为您在写作时感觉更舒服。如果 C++ 对您来说是一种舒适的语言,那就去做吧。它将帮助您进入代码并使其更容易完成。

我也会注意牢记未来。如果 Win2K 要求下降,如果你用 C++ 编写,可能需要你重写。可能不会。在您决定如何进行时,请记住这一点。

于 2009-05-04T21:13:09.823 回答
0

您可以使用 .NET 进行开发,但将编译器选项设置为面向 .NET 2.0 框架。如果操作系统在近期(或远期)升级,您可以升级您的程序以针对 3.5 框架。我会走这条路,因为它可以让其他人更轻松地进行未来维护。

于 2009-05-04T21:58:39.747 回答
0

你考虑过德尔福吗?您可以免费下载 Turbo Delphi,您可以轻松地编写面向 Windows 2000 的代码。使用 Delphi,您将获得出色的 RAD(可以说比您在 C++ 中找到的任何东西都要好……除非您使用 C++ Builder)。

Delphi 创建本地代码,并且没有运行时要求。

当然,缺点是如果您不了解 Delphi(Object-Pascal),您必须熟悉一门新语言。但是,如果您了解 C++,您很快就会对 Delphi 感到宾至如归。

于 2009-05-05T04:41:29.590 回答