Building ARM64 Drivers with the WDK

Starting with the Fall Creators Update, Windows 10 Desktop (Pro and S editions) can run on machines that are powered by ARM64 processors. However, because Windows 10 on ARM does not support x86 emulation of kernel-mode drivers, you must recompile kernel-mode drivers to ARM64 using the instructions below.

Setup

  1. Download Visual Studio 2017 Preview. You'll need at minimum version 15.4.0 Preview 2.0.
  2. On the Windows start menu, type Visual Studio Installer. Then on the Workloads tab, select Desktop development with C++.
    Selecting Desktop development with C++ from Windows options on Workloads tile

  3. On the Individual Components tab, select the following options:

    • Visual C++ compilers and libraries for ARM
    • Visual C++ compilers and libraries for ARM64
      Selecting ARM-specific components to install
  4. Install and restart Visual Studio.

  5. Download the Windows SDK. Ensure that you have SDK version 16299 (Fall Creators Update) or later.
  6. Download the Insider WDK. Ensure that you have WDK version 16299 or later.

Building an ARM64 Driver with the WDK

  1. In Visual Studio, open a driver solution. You can use your own, or one from the Windows-driver-samples repo.
  2. Click on Solutions platform and select Configuration Manager.
    Selecting configuration manager from second dropdown on top toolbar

  3. Under Active Solution Platform, select New.
    Selecting New under Active Solution Platform dropdown

  4. From Type or Select new Platform, select ARM64. Copy settings from Win32. Click OK and Close.
    Selecting ARM64 build target from toolbar-level dropdown

  5. Select ARM64 as the target platform and rebuild.

See Also