简体   繁体   English

是否可以编写在Windows Mobile 6.5和Windows Embedded 8.1 / 10 Handheld上运行的应用程序?

[英]Is it possible to write an application that runs on Windows Mobile 6.5 as well as Windows Embedded 8.1/10 Handheld?

A customer needs an application running on an industry handheld device with barcode scanner. 客户需要在带有条形码扫描仪的工业手持设备上运行的应用程序。

Unfortunately, Windows 8.1 Embedded Handheld devices are rare, and Windows 10 Embedded devices are non-existent. 不幸的是,Windows 8.1 Embedded手持设备很少见,而Windows 10 Embedded设备不存在。 Almost all devices currently available use Windows CE 6 or Windows Mobile 6.5. 当前几乎所有可用的设备都使用Windows CE 6或Windows Mobile 6.5。

As far as I know, (.NET) applications for Windows Mobile 6.5 are exclusively based on Compact Framework and WinForms, whereas Windows 8.1 Embedded software is (exclusively?) based on WinRT and XAML. 据我所知,Windows Mobile 6.5的(.NET)应用程序完全基于Compact Framework和WinForms,而Windows 8.1 Embedded软件(仅?)基于WinRT和XAML。

Is that correct? 那是对的吗? Is there no way to write a (.NET) application which 没有办法编写一个(.NET)应用程序

  • runs on current (Windows Mobile 6.5) devices and 在当前(Windows Mobile 6.5)设备上运行, 并且
  • will run Windows 8.1/10 Embedded devices? 将运行Windows 8.1 / 10嵌入式设备?

You are right, there is no way to do that. 没错,没有办法做到。 The UI is based on winforms for 6.5 and XAML for 8/10. 用户界面基于6.5的winforms和8/10的XAML。 The only thing you can try to do is to try to keep UI and business logic cleanly separated to simplify the migration. 您唯一可以尝试做的就是尝试将UI和业务逻辑保持清晰分离,以简化迁移。 Consider also that some features you had on 6.5 (ex: sql compact) have been dropped in 8/10 and the "replacement" may not be code-compatible and may lack some features. 还请考虑您在6.5(例如:sql compact)上具有的某些功能已在8/10中删除,并且“替换”可能与代码不兼容,并且可能缺少某些功能。 You may try to build and test your non-UI code already on 8/10, so you can check that you are not using features that may impact your migration. 您可能已经尝试在8/10上构建和测试您的非UI代码,因此您可以检查是否未使用可能影响迁移的功能。

If you don't have to write native .NET-code, you should be able to use Rho Elements . 如果您不必编写本机.NET代码,则应该可以使用Rho Elements Possibly there are other cross platform solutions that work as well. 可能还有其他跨平台解决方案也能正常工作。

Possibly you can go with Windows.Forms on Windows Mobile 6.5 and Xamarin on Windows Phone. 可能您可以使用Windows Mobile 6.5上的Windows.Forms和Windows Phone上的Xamarin。 You need to use a compatibilty layer for the Form code of Compact Framework and the one supported by Xamarin. 您需要为Compact Framework的Form代码和Xamarin支持的那一层使用兼容层。

But I would recommend to go with HTML5 (use ZetaKey browser on Windows Mobile). 但是我建议使用HTML5(在Windows Mobile上使用ZetaKey浏览器)。 Even RhoElements is based on HTML5 but with properietary extensions. 甚至RhoElements都基于HTML5,但具有专有扩展名。

Yes, it is possible. 对的,这是可能的。 You will have to implement all GUI logic platform dependent. 您将必须实现所有依赖于GUI逻辑平台的工具。 And can share code using MVVM pattern. 并且可以使用MVVM模式共享代码。 You may also need to switch to a database, that is available on both platforms like SQLite. 您可能还需要切换到在SQLite等两个平台上都可用的数据库。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM