{"id":24064,"date":"2018-05-09T04:00:40","date_gmt":"2018-05-08T19:00:40","guid":{"rendered":"https:\/\/jirak.net\/wp\/windows-10-sdk-preview-build-17661-now-available\/"},"modified":"2018-05-09T04:34:52","modified_gmt":"2018-05-08T19:34:52","slug":"windows-10-sdk-preview-build-17661-now-available","status":"publish","type":"post","link":"https:\/\/jirak.net\/wp\/windows-10-sdk-preview-build-17661-now-available\/","title":{"rendered":"Windows 10 SDK Preview Build 17661 now available!"},"content":{"rendered":"<p>Windows 10 SDK Preview Build 17661 now available!<\/p>\n<p>Today, we released a new <strong>Windows 10 Preview Build of the SDK<\/strong> to be used in conjunction with\u00a0<a href=\"https:\/\/insider.windows.com\/\">Windows 10 Insider Preview<\/a>\u00a0(Build <strong>17661 <\/strong>or greater). The Preview SDK Build <strong>17661 <\/strong>contains bug fixes and under development changes to the API surface area.<\/p>\n<p>The Preview SDK can be downloaded from\u00a0<a href=\"https:\/\/www.microsoft.com\/en-us\/software-download\/windowsinsiderpreviewSDK\">developer section on Windows Insider<\/a>.<\/p>\n<p>For feedback and updates to the known issues, please see the\u00a0<a href=\"https:\/\/social.msdn.microsoft.com\/Forums\/en-US\/home?forum=Win10SDKToolsIssues\">developer forum.<\/a>\u00a0For new developer feature requests, head over to our\u00a0<a href=\"https:\/\/wpdev.uservoice.com\/\">Windows Platform UserVoice.<\/a><\/p>\n<h2>Things to note:<\/h2>\n<ul>\n<li>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.<\/li>\n<li>The Windows SDK will now formally only be supported by Visual Studio 2017 and greater. You can download the Visual Studio 2017 <a href=\"https:\/\/www.visualstudio.com\/downloads\/\">here<\/a>.<\/li>\n<li>This build of the Windows SDK <strong>will<\/strong> install on <a href=\"https:\/\/insider.windows.com\/\">Windows 10 Insider Preview<\/a> and supported Windows operating systems.<\/li>\n<\/ul>\n<h2>Known Issues<\/h2>\n<p>The contract <strong>Windows.System.SystemManagementContract<\/strong> is not included in this release. In order to access the following APIs, please use a previous Windows IoT extension SDK with your project.<\/p>\n<p>This bug will be fixed in a future preview build of the SDK.<\/p>\n<p>The following APIs are affected by this bug:<\/p>\n<pre class=\"brush: csharp; title: ; notranslate\">\r\n\r\nnamespace Windows.Services.Cortana {\r\n  public sealed class CortanaSettings     \r\n}\r\nnamespace Windows.System {\r\n  public enum AutoUpdateTimeZoneStatus\r\n  public static class DateTimeSettings\r\n  public enum PowerState\r\n  public static class ProcessLauncher\r\n  public sealed class ProcessLauncherOptions\r\n  public sealed class ProcessLauncherResult\r\n  public enum ShutdownKind\r\n  public static class ShutdownManager\r\n  public struct SystemManagementContract\r\n  public static class TimeZoneSettings\r\n}\r\n\r\n<\/pre>\n<h2>What&#8217;s New:<\/h2>\n<p><strong>MC.EXE<\/strong><\/p>\n<p>We\u2019ve made some important changes to the C\/C++ ETW code generation of mc.exe (Message Compiler):<\/p>\n<p>The \u201c-mof\u201d parameter is deprecated. This parameter instructs MC.exe to generate ETW code that is compatible with Windows XP and earlier. Support for the \u201c-mof\u201d parameter will be removed in a future version of mc.exe.<\/p>\n<p>As long as the \u201c-mof\u201d parameter is not used, the generated C\/C++ header is now compatible with both kernel-mode and user-mode, regardless of whether \u201c-km\u201d or \u201c-um\u201d was specified on the command line. The header will use the _ETW_KM_ macro to automatically determine whether it is being compiled for kernel-mode or user-mode and will call the appropriate ETW APIs for each mode.<\/p>\n<ul>\n<li>The only remaining difference between \u201c-km\u201d and \u201c-um\u201d is that the EventWrite[EventName] macros generated with \u201c-km\u201d have an Activity ID parameter while the EventWrite[EventName] macros generated with \u201c-um\u201d do not have an Activity ID parameter.<\/li>\n<\/ul>\n<p>The EventWrite[EventName] macros now default to calling EventWriteTransfer (user mode) or EtwWriteTransfer (kernel mode). Previously, the EventWrite[EventName] macros defaulted to calling EventWrite (user mode) or EtwWrite (kernel mode).<\/p>\n<ul>\n<li>The generated header now supports several customization macros. For example, you can set the MCGEN_EVENTWRITETRANSFER macro if you need the generated macros to call something other than EventWriteTransfer.<\/li>\n<li>The manifest supports new attributes.\n<ul>\n<li>Event \u201cname\u201d: non-localized event name.<\/li>\n<li>Event \u201cattributes\u201d: additional key-value metadata for an event such as filename, line number, component name, function name.<\/li>\n<li>Event \u201ctags\u201d: 28-bit value with user-defined semantics (per-event).<\/li>\n<li>Field \u201ctags\u201d: 28-bit value with user-defined semantics (per-field \u2013 can be applied to \u201cdata\u201d or \u201cstruct\u201d elements).<\/li>\n<\/ul>\n<\/li>\n<li>You can now define \u201cprovider traits\u201d in the manifest (e.g. provider group). If provider traits are used in the manifest, the EventRegister[ProviderName] macro will automatically register them.<\/li>\n<li>MC will now report an error if a localized message file is missing a string. (Previously MC would silently generate a corrupt message resource.)<\/li>\n<li>MC can now generate Unicode (utf-8 or utf-16) output with the \u201c-cp utf-8\u201d or \u201c-cp utf-16\u201d parameters.<\/li>\n<\/ul>\n<h2>API Updates and Additions<\/h2>\n<p>When targeting new APIs, consider writing your app to be adaptive in order to run correctly on the widest number of Windows 10 devices. Please see <a href=\"https:\/\/blogs.windows.com\/buildingapps\/2015\/09\/15\/dynamically-detecting-features-with-api-contracts-10-by-10\/#HdHAk5RVtCg6bW4O.97\">Dynamically detecting features with API contracts (10 by 10)<\/a> for more information.<\/p>\n<p>The following APIs have been added to the platform since the release of 17134.<\/p>\n<pre class=\"brush: csharp; title: ; notranslate\">\r\n\r\n namespace Windows.ApplicationModel {\r\n  public sealed class AppInstallerFileInfo\r\n  public sealed class LimitedAccessFeatureRequestResult\r\n  public static class LimitedAccessFeatures\r\n  public enum LimitedAccessFeatureStatus\r\n  public sealed class Package {\r\n    IAsyncOperation&amp;lt;PackageUpdateAvailabilityResult&amp;gt; CheckUpdateAvailabilityAsync();\r\n    AppInstallerFileInfo GetAppInstallerFileInfo();\r\n  }\r\n  public enum PackageUpdateAvailability\r\n  public sealed class PackageUpdateAvailabilityResult\r\n}\r\nnamespace Windows.ApplicationModel.Calls {\r\n  public sealed class VoipCallCoordinator {\r\n    IAsyncOperation&amp;lt;VoipPhoneCallResourceReservationStatus&amp;gt; ReserveCallResourcesAsync();\r\n  }\r\n}\r\nnamespace Windows.ApplicationModel.Store.Preview.InstallControl {\r\n  public enum AppInstallationToastNotificationMode\r\n  public sealed class AppInstallItem {\r\n    AppInstallationToastNotificationMode CompletedInstallToastNotificationMode { get; set; }\r\n    AppInstallationToastNotificationMode InstallInProgressToastNotificationMode { get; set; }\r\n    bool PinToDesktopAfterInstall { get; set; }\r\n    bool PinToStartAfterInstall { get; set; }\r\n    bool PinToTaskbarAfterInstall { get; set; }\r\n  }\r\n  public sealed class AppInstallManager {\r\n    bool CanInstallForAllUsers { get; }\r\n  }\r\n  public sealed class AppInstallOptions {\r\n    AppInstallationToastNotificationMode CompletedInstallToastNotificationMode { get; set; }\r\n    bool InstallForAllUsers { get; set; }\r\n    AppInstallationToastNotificationMode InstallInProgressToastNotificationMode { get; set; }\r\n    bool PinToDesktopAfterInstall { get; set; }\r\n    bool PinToStartAfterInstall { get; set; }\r\n    bool PinToTaskbarAfterInstall { get; set; }\r\n    bool StageButDoNotInstall { get; set; }\r\n  }\r\n  public sealed class AppUpdateOptions {\r\n    bool AutomaticallyDownloadAndInstallUpdateIfFound { get; set; }\r\n  }\r\n}\r\nnamespace Windows.Devices.Enumeration {\r\n  public sealed class DeviceInformationPairing {\r\n    public static bool TryRegisterForAllInboundPairingRequestsWithProtectionLevel(DevicePairingKinds pairingKindsSupported, DevicePairingProtectionLevel minProtectionLevel);\r\n  }\r\n}\r\nnamespace Windows.Devices.Lights {\r\n  public sealed class LampArray\r\n  public enum LampArrayKind\r\n  public sealed class LampInfo\r\n  public enum LampPurpose : uint\r\n}\r\nnamespace Windows.Devices.Sensors {\r\n  public sealed class SimpleOrientationSensor {\r\n    public static IAsyncOperation&amp;lt;SimpleOrientationSensor&amp;gt; FromIdAsync(string deviceId);\r\n    public static string GetDeviceSelector();\r\n  }\r\n}\r\nnamespace Windows.Devices.SmartCards {\r\n  public static class KnownSmartCardAppletIds\r\n  public sealed class SmartCardAppletIdGroup {\r\n    string Description { get; set; }\r\n    IRandomAccessStreamReference Logo { get; set; }\r\n    ValueSet Properties { get; }\r\n    bool SecureUserAuthenticationRequired { get; set; }\r\n  }\r\n  public sealed class SmartCardAppletIdGroupRegistration {\r\n    string SmartCardReaderId { get; }\r\n    IAsyncAction SetPropertiesAsync(ValueSet props);\r\n  }\r\n}\r\nnamespace Windows.Devices.WiFi {\r\n  public enum WiFiPhyKind {\r\n    He = 10,\r\n  }\r\n}\r\nnamespace Windows.Media.Core {\r\n  public sealed class MediaStreamSample {\r\n    public static MediaStreamSample CreateFromSurface(IDirect3DSurface surface, TimeSpan timestamp);\r\n  }\r\n}\r\nnamespace Windows.Media.Devices.Core {\r\n  public sealed class CameraIntrinsics {\r\n    public CameraIntrinsics(Vector2 focalLength, Vector2 principalPoint, Vector3 radialDistortion, Vector2 tangentialDistortion, uint imageWidth, uint imageHeight);\r\n  }\r\n}\r\nnamespace Windows.Media.Streaming.Adaptive {\r\n  public enum AdaptiveMediaSourceResourceType {\r\n    MediaSegmentIndex = 5,\r\n  }\r\n}\r\nnamespace Windows.Security.Authentication.Web.Provider {\r\n  public sealed class WebAccountProviderInvalidateCacheOperation : IWebAccountProviderBaseReportOperation, IWebAccountProviderOperation\r\n  public enum WebAccountProviderOperationKind {\r\n    InvalidateCache = 7,\r\n  }\r\n  public sealed class WebProviderTokenRequest {\r\n    string Id { get; }\r\n  }\r\n}\r\nnamespace Windows.Security.DataProtection {\r\n  public enum UserDataAvailability\r\n  public sealed class UserDataAvailabilityStateChangedEventArgs\r\n  public sealed class UserDataBufferUnprotectResult\r\n  public enum UserDataBufferUnprotectStatus\r\n  public sealed class UserDataProtectionManager\r\n  public sealed class UserDataStorageItemProtectionInfo\r\n  public enum UserDataStorageItemProtectionStatus\r\n}\r\nnamespace Windows.Services.Store {\r\n  public sealed class StoreContext {\r\n    IAsyncOperation&amp;lt;StoreRateAndReviewResult&amp;gt; RequestRateAndReviewAppAsync();\r\n  }\r\n  public sealed class StoreRateAndReviewResult\r\n  public enum StoreRateAndReviewStatus\r\n}\r\nnamespace Windows.Storage.Provider {\r\n  public enum StorageProviderHydrationPolicyModifier : uint {\r\n    AutoDehydrationAllowed = (uint)4,\r\n  }\r\n}\r\nnamespace Windows.System {\r\n  public sealed class LauncherUIOptions {\r\n    ViewGrouping GroupingPreference { get; set; }\r\n  }\r\nnamespace Windows.UI.Composition {\r\n  public enum CompositionBatchTypes : uint {\r\n    AllAnimations = (uint)5,\r\n    InfiniteAnimation = (uint)4,\r\n  }\r\n  public sealed class CompositionGeometricClip : CompositionClip\r\n  public sealed class Compositor : IClosable {\r\n    CompositionGeometricClip CreateGeometricClip();\r\n  }\r\n}\r\nnamespace Windows.UI.Core {\r\n  public sealed class SystemNavigationManager {\r\n    bool DoesBackButtonReduceViewBounds { get; }\r\n  }\r\n}\r\nnamespace Windows.UI.Notifications {\r\n  public sealed class ScheduledToastNotification {\r\n    public ScheduledToastNotification(DateTime deliveryTime);\r\n    IAdaptiveCard AdaptiveCard { get; set; }\r\n  }\r\n  public sealed class ToastNotification {\r\n    public ToastNotification();\r\n    IAdaptiveCard AdaptiveCard { get; set; }\r\n  }\r\n}\r\nnamespace Windows.UI.Shell {\r\n  public sealed class TaskbarManager {\r\n    IAsyncOperation&amp;lt;bool&amp;gt; IsSecondaryTilePinnedAsync(string tileId);\r\n    IAsyncOperation&amp;lt;bool&amp;gt; RequestPinSecondaryTileAsync(SecondaryTile secondaryTile);\r\n    IAsyncOperation&amp;lt;bool&amp;gt; TryUnpinSecondaryTileAsync(string tileId);\r\n  }\r\n}\r\nnamespace Windows.UI.StartScreen {\r\n  public sealed class StartScreenManager {\r\n    IAsyncOperation&amp;lt;bool&amp;gt; ContainsSecondaryTileAsync(string tileId);\r\n    IAsyncOperation&amp;lt;bool&amp;gt; TryRemoveSecondaryTileAsync(string tileId);\r\n  }\r\n}\r\nnamespace Windows.UI.ViewManagement {\r\n  public sealed class ApplicationView {\r\n    bool IsTabGroupingSupported { get; }\r\n  }\r\n  public enum ViewGrouping\r\n  public sealed class ViewModePreferences {\r\n    ViewGrouping GroupingPreference { get; set; }\r\n  }\r\n}\r\nnamespace Windows.UI.ViewManagement.Core {\r\n  public sealed class CoreInputView {\r\n    bool TryHide();\r\n    bool TryShow();\r\n    bool TryShow(CoreInputViewKind type);\r\n  }\r\n  public enum CoreInputViewKind\r\n}\r\nnamespace Windows.UI.Xaml.Controls {\r\n  public class NavigationView : ContentControl {\r\n    bool IsTopNavigationForcedHidden { get; set; }\r\n    NavigationViewOrientation Orientation { get; set; }\r\n    UIElement TopNavigationContentOverlayArea { get; set; }\r\n    UIElement TopNavigationLeftHeader { get; set; }\r\n    UIElement TopNavigationMiddleHeader { get; set; }\r\n    UIElement TopNavigationRightHeader { get; set; }\r\n  }\r\n  public enum NavigationViewOrientation\r\n  public sealed class PasswordBox : Control {\r\n    bool CanPasteClipboardContent { get; }\r\n    public static DependencyProperty CanPasteClipboardContentProperty { get; }\r\n    void PasteFromClipboard();\r\n  }\r\n  public class RichEditBox : Control {\r\n    RichEditTextDocument RichEditDocument { get; }\r\n  }\r\n  public sealed class RichTextBlock : FrameworkElement {\r\n    void CopySelectionToClipboard();\r\n  }\r\n  public class SplitButton : ContentControl\r\n  public sealed class SplitButtonClickEventArgs\r\n  public enum SplitButtonOrientation\r\n  public sealed class TextBlock : FrameworkElement {\r\n    void CopySelectionToClipboard();\r\n  }\r\n  public class TextBox : Control {\r\n    bool CanPasteClipboardContent { get; }\r\n    public static DependencyProperty CanPasteClipboardContentProperty { get; }\r\n    bool CanRedo { get; }\r\n    public static DependencyProperty CanRedoProperty { get; }\r\n    bool CanUndo { get; }\r\n    public static DependencyProperty CanUndoProperty { get; }\r\n    void CopySelectionToClipboard();\r\n    void CutSelectionToClipboard();\r\n    void PasteFromClipboard();\r\n    void Redo();\r\n    void Undo();\r\n  }\r\n  public sealed class WebView : FrameworkElement {\r\n    event TypedEventHandler&amp;lt;WebView, WebViewWebResourceRequestedEventArgs&amp;gt; WebResourceRequested;\r\n  }\r\n  public sealed class WebViewWebResourceRequestedEventArgs\r\n}\r\nnamespace Windows.UI.Xaml.Controls.Primitives {\r\n  public class FlyoutBase : DependencyObject {\r\n    FlyoutShowMode ShowMode { get; set; }\r\n    public static DependencyProperty ShowModeProperty { get; }\r\n    public static DependencyProperty TargetProperty { get; }\r\n    void Show(FlyoutShowOptions showOptions);\r\n  }\r\n  public enum FlyoutPlacementMode {\r\n    BottomLeftJustified = 7,\r\n    BottomRightJustified = 8,\r\n    LeftBottomJustified = 10,\r\n    LeftTopJustified = 9,\r\n    RightBottomJustified = 12,\r\n    RightTopJustified = 11,\r\n    TopLeftJustified = 5,\r\n    TopRightJustified = 6,\r\n  }\r\n  public enum FlyoutShowMode\r\n  public sealed class FlyoutShowOptions : DependencyObject\r\n}\r\nnamespace Windows.UI.Xaml.Hosting {\r\n  public sealed class XamlBridge : IClosable\r\n}\r\nnamespace Windows.UI.Xaml.Markup {\r\n  public sealed class FullXamlMetadataProviderAttribute : Attribute\r\n}\r\n \r\n<\/pre>\n<p>Source: <a href=\"http:\/\/blogs.windows.com\/buildingapps\/2018\/05\/08\/windows-10-sdk-preview-build-17661-now-available\/\" target=\"_blank\">Windows 10 SDK Preview Build 17661 now available!<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>Windows 10 SDK Preview Build 17661 now available! Today, we released a new Windows 10 Preview Build of the SDK to be used in conjunction with\u00a0Windows 10 Insider Preview\u00a0(Build 17661 or greater). The Preview SDK Build 17661 contains bug fixes and under development changes to the API surface area. The Preview SDK can be downloaded from\u00a0developer section on Windows Insider. For feedback and updates to the known issues, please see the\u00a0developer forum.\u00a0For new developer feature requests, head over to our\u00a0Windows Platform UserVoice. Things to note: 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. You can download <a class=\"mh-excerpt-more\" href=\"https:\/\/jirak.net\/wp\/windows-10-sdk-preview-build-17661-now-available\/\" title=\"Windows 10 SDK Preview Build 17661 now available!\">[ more&#8230; ]<\/a><\/p>\n<\/div>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[169],"tags":[201],"class_list":["post-24064","post","type-post","status-publish","format-standard","hentry","category-news","tag-windows"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts\/24064","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/comments?post=24064"}],"version-history":[{"count":1,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts\/24064\/revisions"}],"predecessor-version":[{"id":24065,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts\/24064\/revisions\/24065"}],"wp:attachment":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/media?parent=24064"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/categories?post=24064"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/tags?post=24064"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}