WPF .Net 6.0应用程序可以在Windows 7或Windows XP上运行吗?

jaxagkaj  于 2022-12-14  发布在  .NET
关注(0)|答案(2)|浏览(2199)

我必须设计一个简单的应用程序,通过串行端口与机器通信,然后在excel文件中记录响应。该应用程序需要能够与windows XP一直到windows 10一起工作。WPF .net 6. 0是一个好的选择吗?

1zmg4dgp

1zmg4dgp1#

操作:
WPF .Net 6.0应用程序可以在Windows 7或Windows XP上运行吗?

TL;DR:*基于硬件的Windows桌面加速XP不可用**,因此无论您尝试使用的.NET版本是什么,都没有必要尝试在XP上部署WPF

Windows XP支持已结束

OP:
...需要能够使用window XP,直到...
除非您是为主要政府机构工作,否则对Windows XP的支持已经结束,所以

WPF需要硬件加速

此外,如果您希望创建一个 WPF 应用程序(一项2006年底发布的技术),WPF的最大卖点之一是它是第一批支持硬件加速的MS GUI框架之一(应用程序通过 DirectX 在一次操作中以位块方式传输到屏幕上)-在 * 早期的Windows Vista* 之前,这些应用程序不会出现在Windows桌面上2007年(记得突然间人们购买3D卡只是为了运行Windows)。
不幸的是,Windows XP(2001年发布的操作系统)早于Windows桌面中的硬件加速,因此即使您设法在XP上部署了WPF应用程序,它也不太可能得到硬件加速,而且运行效果很差。
此外,WPF最初是在.NET Framework 3中发布的,需要Windows Vista、Windows Server 2008 R2 SP1+中的一个。

WPF的最小值是多少?

您可以在Windows Vista+和.NET Framework 3.0+上安全地使用WPF,因为您知道它将受益于硬件加速。

关于.NET 5+的道路呢?

考虑到.NET 5+中的WPF是Windows-only(因此有点违背了跨平台的要求,即.NET Core/5+),以及越来越多特定于Windows的技术要么被丢弃,要么一开始就没有移植到.NET 5+,您真的需要问问自己:

问题

    • 如果我知道我的应用程序仅适用于Windows,并且我不关心跨平台,我是否应该开始使用.NET 5+?*

......答案是一个大大的***“注册前要小心!"***。
下列技术在.NET 5+中不可用:

  • 应用程序域
  • CAS(包括安全透明性)
  • 海关总署

......这真实的一个遗憾,因为有相当多的传统WPF(以及WinForms)智能客户端项目需要这些技术来实现第三方插件的防弹扩展性沙箱化
对我来说,WPF.NET5+还有点未知;它是否是硬件加速的还不清楚,即使是硬件加速的,您是否愿意冒将来放弃这种支持的风险(与在.NET6中放弃AppDomain.CreateDomain的方式完全相同)。
我的建议是,如果目的是创建硬件加速的WPF应用程序,则坚持使用.NET Framework 3.0+(.NET Framework 4.x+更好)。

qkf9rpyu

qkf9rpyu2#

从我所看到的,如果你真的需要支持XP,你将需要回到所有的方式回到.NET框架4。然而,我从来没有测试过这个,你可能仍然得到它的工作。如果你只需要Windows 7和更高版本,.NET 6看起来不错。支持的.NET Core操作系统版本可以在GitHub上找到。每个操作系统支持的Framework版本可在Microsofts Documentation中找到。
您的特定需求似乎是serial port communicationexcel file creation,两者都与.NET Framework 4兼容。
您没有解释为什么需要GUI,WPF将是一个问题,但WinForms应该是好的。

相关问题