Windows 10 SDK Preview Build 17095 released.

Things to note:

  • This build is also available in the latest Visual Studio 2017 Preview
  • This build works in conjunction with previously released SDKs and Visual Studio 2017. You can install this SDK and still also continue to submit your apps that target Windows 10 Creators build or earlier to the store.
  • The Windows SDK will now formally only be supported by Visual Studio 2017 and greater. .
  • This build of the Windows SDK will install on Windows 10 Insider Preview and supported Windows operating systems.

Known Issues

  • Cannot deploy to a device: When attempting to deploy to a mobile device, it fails with the following error: DEP0001: Unexpected Error: SmartDeviceException – Class not registered [0x80131500]

To work around this issue:

  1. Go to Administrative Command Prompt
  2. Run REGSVR32 “\Program Files (x86)\Windows Kits\10\bin\10.0.17095.0\x86\SirepClient.dll”
  • The following tools are not included with this release: 

Filtdump.exe

JSConstraintDebug.exe

Regwindmd.exe

Topedit.exe

What’s New:

  • C++/WinRT Now Available:The C++/WinRT headers and cppwinrt compiler (cppwinrt.exe) are now included in the Windows SDK. The compiler comes in handy if you need to consume a third-party WinRT component or if you need to author your own WinRT components with C++/WinRT. The easiest way to get working with it after installing the Windows Insider Preview SDK is to start the Visual Studio Developer Command Prompt and run the compiler in that environment. Authoring support is currently experimental and subject to change. Stay tuned as we will publish more detailed instructions on how to use the compiler in the coming week.

Breaking Changes

New MIDL key words.  

As a part of the “modernizing IDL” effort, several new keywords are added to the midlrt tool. These new keywords will cause build breaks if they are encountered in IDL files.

The new keywords are:

  • event
  • set
  • get
  • partial
  • unsealed
  • overridable
  • protected
  • importwinmd

If any of these keywords is used as an identifier, it will generate a build failure indicating a syntax error.

The error will be similar to:

1 >d:\os\src\onecore\com\combase\unittest\astatestservers\testserver6\idl\remreleasetest.idl(12) : error MIDL2025 : [msg]syntax error [context]: expecting a declarator or * near “)”

To fix this, modify the identifier in error to an “@” prefix in front of the identifier. That will cause MIDL to treat the offending element as an identifier instead of a keyword.

Read more about API updates and additions here.