Microsoft's Project Reunion Attempts to Unify Win32 and UWP Apps

Project Reunion, the latest addition to Microsoft's development toolkit, gives developers more options for updating and modernizing their apps on Windows by bringing together Win32 and UWP APIs.

Richard Hay, Senior Content Producer

July 2, 2020

4 Min Read
Windows Development

At Build 2020, a new member of the Microsoft development toolkit, Project Reunion, was unveiled. This new platform looks to bring together the Win32, UWP, WPF and Windows Forms APIs, breaking them out from specific versions of the Windows 10 operating system to expand what releases of the operating system and types of devices developers can target with their apps and software.

Previously, Microsoft’s APIs were tied to specific releases of Windows 10 and therefore limited a developer’s ability to target a broad range of users.

Project Reunion is in its early stages of development, but the one thing Microsoft has said for sure is that Project Reunion is not a new app model. Rather, Project Reunion provides a set of libraries and other content that can be added to a developer’s project and its specific app model (Win32, UWP, WPF and Windows Forms). The process of bringing all these development surfaces together, which will also include some new APIs in addition to existing ones, is called polyfilling.

Project Reunion filling in the gaps via the polyfill technique will be done automatically so that all these APIs work across all supported versions of Windows rather than one specific release.

Visually, this is what the process of incorporating Project Reunion APIs looks like:

Microsoft Project Reunion

project-reunion-image-1_1

Those outlined APIs under the Microsoft Project Reunion header are intended to adapt and translate the various Windows App Library APIs, then incorporate that functionality into the Windows operating system and apps no matter if they require desktop or UWP APIs.

Microsoft has identified four key principles around their approach to Project Reunion as part of the Microsoft Development Kit:

  1. Compatible: Making all apps functional and full-featured across all supported versions of Windows, regardless of the app origins as Win32, Packaged or UWP. Under Project Reunion, all these APIs will be categorized as either New, Converged or API Subsets.

  2. Modern: Project Reunion will have full support of modern development technologies and libraries; some listed were user interface, artificial intelligence and machine learning. Other applications include cloud-based, streaming and edge computing. In addition, Project Reunion will offer continued support for C++, Rust, C# and JavaScript to expand functionality of apps. Currently WinUI3 for XAML, C++/WinRT, RUST/WinRT, C#/WinRT and MSIX-Core are already available to be used in Project Reunion.

  3. Agile: Since it is no longer tied to operating system releases, Project Reunion’s updates, including previews, can be released outside of the Windows release schedule. As new capabilities are added to Project Reunion, developers can add those to their apps.

  4. Open: Project Reunion will be built using GitHub as a development collaboration platform. Developers are encouraged to participate in the discussion around the project’s development, contribute code and add pull requests to address bugs and other issues.

The bottom line on Project Reunion: Developers can pick and choose what aspects of the project are incorporated into apps. Whatever elements are used, there should not be any need to rewrite existing code into a new language or do a lot of work to connect all the dots between functionality and features.

Based on the Project Reunion roadmap, Microsoft is already looking adding the following to the Project Reunion:

  • Edge/Chromium WebView2 for web-based elements

  • Modern Lifecycle Helpers to help with power management, registering for reboots after system restarts, and reducing restarts of the app after updates.

  • Startup Tasks to ensure app does not consume excess resources but be ready for quick use after connecting.

  • Update Scan Integration to keep apps updated during normal system maintenance tasks.

  • Access to User Resources like the clipboard, inter-process communication exchanges, and Windows Shell Namespace with user consent.

  • Modern Resource Tooling: ability to use ResX/ResW in Win32 applications rather than Multilingual User Interfaces.

Microsoft has a long history of introducing new technologies to its development toolkit over the years with varying levels of support in the long term. It would be understandable to see some hesitation at the thought of yet another API translator for desktop and UWP apps. However, if this toolset reaches its potential and retains consistent support from Microsoft, the line between Win32 and UWP apps could become a moot point for both the developer and the end user.

Read more about:

Microsoft

About the Author

Richard Hay

Senior Content Producer, IT Pro Today (Informa Tech)

I served for 29 plus years in the U.S. Navy and retired as a Master Chief Petty Officer in November 2011. My work background in the Navy was telecommunications related so my hobby of computers fit well with what I did for the Navy. I consider myself a tech geek and enjoy most things in that arena.

My first website – AnotherWin95.com – came online in 1995. Back then I used GeoCities Web Hosting for it and WindowsObserver.com is the result of the work I have done on that site since 1995.

In January 2010 my community contributions were recognized by Microsoft when I received my first Most Valuable Professional (MVP) Award for the Windows Operating System. Since then I have been renewed as a Microsoft MVP each subsequent year since that initial award. I am also a member of the inaugural group of Windows Insider MVPs which began in 2016.

I previously hosted the Observed Tech PODCAST for 10 years and 317 episodes and now host a new podcast called Faith, Tech, and Space. 

I began contributing to Penton Technology websites in January 2015 and in April 2017 I was hired as the Senior Content Producer for Penton Technology which is now Informa Tech. In that role, I contribute to ITPro Today and cover operating systems, enterprise technology, and productivity.

https://twitter.com/winobs

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like