Skip to content

Support Windows ARM64 #36699

Closed
Closed
@richlander

Description

@richlander

Support Windows ARM64

We are in the process of adding support for Windows ARM64 as part of the .NET 5.0 project. As a result, you will be able to run Windows Forms, WPF and ASP.NET Core apps on Windows ARM64 devices, such as the Surface Pro X.

We intend to support the same .NET capabilities on ARM64 as on x64. Related: #35853

This project follows a similar effort to add Console and ASP.NET Core support for Linux ARM64.

The .NET 5.0 Preview 4 SDK supports building and running ASP.NET Core and Console apps.

You can install master branch builds if you would like want to test Windows Forms on ARM64. master branch builds do not yet include WPF support for ARM64.

Remaining .NET 5 Work

Post .NET 5 Work

  • Produce and publish Windows Desktop Runtime Pack for ARM64
    • Add Windows Forms to the Windows Desktop Runtime Pack
    • Add WPF to the Windows Desktop Runtime Pack
  • Add Windows Desktop framework to the SDK
    • Add Windows Forms to the Windows Desktop framework in the SDK
    • Add WPF to the Windows Desktop framework in the SDK
    • Crossgen Windows Desktop Pack for ARM64
  • Test PowerShell on Windows ARM64 (PowerShell team will do this, but it is an important signoff criteria)

Timeline

The following timeline is for .NET 5.0 and Windows ARM64:

  • .NET 5.0 Preview 4 -- Ship the .NET SDK, without Windows Desktop
  • .NET 5.0 Preview 5 -- Add Windows Desktop to SDK, with Windows Forms
  • .NET 5.0 Preview 6 -- Add ARM64 MSI installer for .NET Runtime
  • .NET 5.0 RC2 -- Add ARM64 MSI installer for SDK
  • TBD -- Add WPF to Windows Desktop

After this project is complete, the Windows ARM64 SDK will have functional parity with x64.

Examples

The following image demonstrate the Conway's Game of life VB sample running on Windows ARM64.

2020-05-15

The following demonstrates displaying version information in a Windows Forms app on ARM64.

image

The following image demonstrates 32-bit x86 Windows PowerShell 5.1 running emulated (on .NET Framework 4.8), and 64-bit ARM64 PowerShell 7.1 running natively (on .NET 5.0) on Windows ARM64.

2020-05-15 (5)

See PowerShell/PowerShell to download the Windows ARM64 version. You can also install the PowerShell .NET tool on Windows ARM64.

See versioninfo for APIs that you can use to get version and architecture information.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions