-The Windows Runtime, and WinRT APIs, are an evolution of Windows APIs. Originally, Windows apps were writen using flat, C-style Win32 APIs and to those were added COM APIs—[DirectX](/windows/desktop/directx) being a prominent example. Later technologies such as Windows Forms, WPF, .NET, and managed languages also providing a unique way of writing Windows apps with their own flavor of API technology. Under the covers, the Windows Runtime is the next stage of COM. At the actual application binary interface (ABI) layer, its roots in COM become visible. But unlike COM, the Windows Runtime was designed to be callable from a wide variety of programming languages in a more natural way. As a result, access to the Windows Runtime is made available via what are known as language projections. A projection hides the COM details, and provides a more natural programming experience for a given language. There is a Windows Runtime language projection into C#, Visual Basic, standard C++, JavaScript, and so on. Furthermore, once packaged appropriately—see [Desktop Bridge](/windows/msix/desktop/source-code-overview)—you can call WinRT APIs from an app built in a variety of application models: Win32, .NET, WinForms, WPF, and UWP.
0 commit comments