Windows Runtime components

Windows Runtime components are self-contained objects that you can instantiate and use from any language, including C#, Visual Basic, JavaScript, and C++.

You can use Visual Studio and C#, Visual Basic, or C++ to create Windows Runtime components that can be used in Universal Windows Platform (UWP) apps.

Topic Description
Creating Windows Runtime Components in C++ This article shows how to use C++ to create a Windows Runtime component, which is a DLL that's callable from a Universal Windows app that's built by using JavaScript—or C#, Visual Basic, or C++.
Walkthrough: Creating a basic Windows Runtime component in C++ and calling it from JavaScript or C# This walkthrough shows how to create a basic Windows Runtime Component DLL that's callable from JavaScript, C#, or Visual Basic. Before you begin this walkthrough, make sure that you understand concepts such as the Abstract Binary Interface (ABI), ref classes, and the Visual C++ Component Extensions that make working with ref classes easier. For more information, see Creating Windows Runtime Components in C++ and Visual C++ Language Reference (C++/CX).
Creating Windows Runtime Components in C# and Visual Basic Starting with the .NET Framework 4.5, you can use managed code to create your own Windows Runtime types, packaged in a Windows Runtime component. You can use your component in Universal Windows Platform (UWP) apps with C++, JavaScript, Visual Basic, or C#. This article outlines the rules for creating a component, and discusses some aspects of .NET Framework support for the Windows Runtime. In general, that support is designed to be transparent to the .NET Framework programmer. However, when you create a component to use with JavaScript or C++, you need to be aware of differences in the way those languages support the Windows Runtime.
Walkthrough: Creating a Simple Windows Runtime component and calling it from JavaScript This walkthrough shows how you can use the .NET Framework with Visual Basic or C# to create your own Windows Runtime types, packaged in a Windows Runtime component, and how to call the component from your Universal Windows app built for Windows using JavaScript.
Raising Events in Windows Runtime components If your Windows Runtime component raises an event of a user-defined delegate type on a background thread (worker thread) and you want JavaScript to be able to receive the event, you can implement and/or raise it in one of these ways:
Brokered Windows Runtime Components for side-loaded UWP apps This topic discusses an enterprise-targeted feature supported by Windows 10 Update and above, which allows touch-friendly .NET apps to use the existing code responsible for key business-critical operations.