避免未记录和不受支持的功能(译文)
By S.F.
本文链接 https://www.kyfws.com/news/avoid-the-undocumented-and-unsupported-functions/
版权声明 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
- 3 分钟阅读 - 1366 个词 阅读量 0避免未记录和不受支持的功能(译文)
原文地址:https://www.codeproject.com/Articles/61882/Avoid-the-Undocumented-and-Unsupported-Functions
原文作者:Joel Ivory Johnson
译文由本站翻译
前言
在MSDN论坛和我收到的一些电子邮件之间,我看到了一些问题中的共同主题.他们处理Windows Phone的未记录功能…
在MSDN论坛和我收到的一些电子邮件之间,我看到了一些问题中的共同主题.他们处理Windows Phone的未记录功能.对于此类功能,我的建议是最好避免使用这些功能,而不是尝试弄清楚如何使未记录的功能起作用. 有人可能会称我为懒惰,但我给出此建议并非出于懒惰.使用未记录的功能会带来一些风险.一种风险是,使用未记录功能的程序可能会降低跨设备和固件版本的兼容性.我第一次遇到此问题是在撰写有关Windows Mobile Power Management的文章时.在撰写本文的过程中,我的TyTn II的更新版本已从Windows Mobile 6.0升级到6.1.更新后,由于电源管理器的更改,我编写的某些代码示例不再起作用. 如果您仔细阅读Windows Phones上的MSDN文档,您会发现它与Windows Embedded CE上的文档混合在一起(考虑到Windows Phone操作系统是从Windows Embedded CE派生的,这很有意义.在某些页面上,您会发现会看到Windows Embedded CE支持某种功能,但Windows Mobile不支持某种功能.有时,当您看到Windows Embedded CE列出但不受[Windows Phones]支持的功能时.(http://msdn.microsoft. com/en-us/library/aa921525.aspx),即使您找到了已实现该功能的Windows Phone.对于此类项目,您会发现该功能可能是可选的(因此并非在所有Windows Phone上),/或实现可能对OEM决策有很大的依赖性(可能无法按预期方式工作).另一个示例是自定义显示在任务栏中的通知图标.手机](http://www.j2i.net/BlogEngine/post/2008/12/31/Placing-Custom-Icon-in-Task-Bar.aspx)指南.而且,如果您看一下Windows Mobile 6.5.3,您会发现这种旧技术可能不适用于更新的设备. 制作需要某些功能的程序的后果可能是,程序可能存在或可能不存在,并且在存在时可能会或可能不会以某种方式运行,这是因为程序最终可能会具有有限的兼容性和跨设备的不稳定的稳定性. 并非并非每个人都记录和支持相同的功能. OEM(正在实现设备,驱动程序和操作系统的一部分)将拥有文档和对Windows中许多可用的低级功能的支持. MSDN文档中未提及其中许多功能.应用程序开发人员通常需要对设备的更高级别的访问权限,并且通常他们将无法使用这些功能. 我并没有将所有使用未记录和不受支持的功能的实例标记为不好.实际上,在很多情况下,这提供了一些不错的解决方案.当遵守纪律时,一切都有它的位置.因此,我将其更多地作为一般规则来说明,对于一般情况,最好不要对这些功能领域进行一般开发. CodeProject
许可
本文以及所有相关的源代码和文件均已获得The Code Project Open License (CPOL)的许可。
All-Topics 新闻 翻译