WinAPI和.NET之间有什么关系?

Rap*_*ael 1 .net winapi

我是一名C#开发人员,我正在努力了解WinAPI在Windows开发中的作用.我的看法是它是内核本身的唯一阐述,并且在.NET之前,它也是"Windows开发"本身(不包括非Microsoft技术),但我不确定这些语句都不是.另外,我不确定WinAPI和.NET框架的关系是什么.所以我有几个问题:

  • 整个.NET运行时是否构建在WinAPI之上?如果是这样,WinAPI真的是在Windows上开发的最低级别界面吗?
  • 现在,每个人在Windows开发(在任何领域,如网络,商业,软件产品等)中的作用是什么?
  • 现在是否有比.NET开发人员更多的WinAPI(C/C++)开发人员?
  • WinRT在哪里进入?

Jer*_*fin 5

Windows API(或多或少)是.NET的基础,是的.

不,它不是Windows的最低级别的开发.Windows NT原本打算成为一种Microkernel,Win32只是其中运行的几个可能子系统之一.这些子系统使用Windows NT"本机API"与微内核通信.可以编写其他代码以直接使用本机API.

下一步"下面"可能是设备驱动程序代码,但它有足够的不同,它是否真的很重要.您通常不会使用它来编写应用程序,但(显然已经足够)设备驱动程序.

WinRT基本上是一个新的API(或多或少)与现有的Windows API一起,并通过COM接口提供服务.

我不会尝试涵盖角色和/或开发人员数量.确定角色在很大程度上是主观的,我怀疑是否有人确实知道开展特定工作的开发人员的确切数量.