【问题标题】:What are the difficulties of writing core os components in managed code?在托管代码中编写核心操作系统组件有哪些困难?
【发布时间】:2012-06-08 21:48:55
【问题描述】:

我知道一些 Microsoft 员工是 StackOverflow 的成员,例如著名的 Raymond Chen 和 Larry Osterman(Vista 的音频堆栈和每个应用程序声音控制机制的工程师),我们知道 Jeff Atwood 也在这里。所以也许我们可以直接从马的嘴里学到一些关于核心 Windows 组件中托管代码的经验。

我已经下载了所有泄露的 Windows Longhorn 版本(来自“明显”的来源),并使用“dotPeek”和“.net OR not”等工具四处寻找托管代码。我发现在 2004 年 8 月的“longhorn 重置”之后,托管代码在每次构建中都在下降。但我什至发现用托管代码编写的“windows movie maker”。

那么,问题来了:在托管代码中编写核心操作系统组件有哪些困难?

【问题讨论】:

    标签: wpf windows winapi windows-vista managed


    【解决方案1】:

    我确信还有其他考虑因素,但这是一个相当明显的考虑因素:

    托管代码组件需要特定版本的托管运行时,并且,IIRC,一个进程中只能有一个托管运行时实例。这立即排除了对共享组件使用托管代码的可能性——因为一个应用程序及其一个或多个组件可能需要不同版本的运行时,并将其使用限制为应用程序样式的组件。

    还要记住,Windows 的更多部分实际上是“共享组件”,而不是显而易见的。虽然您可能将资源管理器视为一种应用程序,但一旦应用程序打开文件/打开通用对话框,它就会在其中包含一堆资源管理器组件,列出可用的文件和目录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-25
      • 2022-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-06
      • 2014-05-27
      相关资源
      最近更新 更多