Windows 10 SDK Önizleme Yapısı 17040 kullanıma sunuldu
Bugün, Windows 10 Insider Preview (Build 17040 veya üzeri) ile birlikte kullanılmak üzere SDK'nın yeni bir Windows 10 Önizleme Derlemesini yayınladık. Preview SDK Yapı 17040, hata düzeltmeleri ve API yüzey alanında geliştirme değişiklikleri içerir.
Önizleme SDK'sını indirebilirsiniz Windows Insider 'daki geliştirici bölümünden.
Bilinen sorunlarla ilgili geri bildirim ve güncellemeler için lütfen geliştirici forumuna bakın. Yeni geliştirici özelliği istekleri için Windows Platform UserVoice'umuza gidin.
Dikkat etmesi gerekenler:
- Bu yapı, daha önce yayımlanan SDK'lar ve Visual Studio 2017 ile birlikte çalışır. Bu SDK'yı yükleyebilir ve ayrıca Windows 10 Creators derlemesini veya önceki sürümünü hedefleyen uygulamalarınızı mağazaya göndermeye devam edebilirsiniz.
- Windows SDK artık yalnızca Visual Studio 2017 ve sonraki bir şirket tarafından resmi olarak desteklenecektir. Visual Studio 2017'ye buradanindirebilirsiniz.
Bilinen Sorunlar
- "Windows App Certification Kit ile çalıştırılan tüm testler başarısız olacak. Yükleme sırasında lütfen Windows App Certification Kit"
- Windows 10 Insider Preview yapısı olmayan bir işletim sistemine yükleme desteklenmez ve başarısız olabilir.
Yenilikler:
- C++/WinRT Artık Kullanılabilir:
C++/WinRT üstbilgileri ve cppwinrt derleyicisi (cppwinrt.exe) artık Windows SDK'ya eklenmiştir. Derleyici, üçüncü taraf bir WinRT bileşenini tüketmeniz gerekiyorsa veya C++/WinRT ile kendi WinRT bileşenlerinizi yazmanız gerekiyorsa kullanışlıdır. Windows Insider Preview SDK'yı yükledikten sonra onunla çalışmanın en kolay yolu, Visual Studio Developer Komut İstemi'ni başlatmak ve derleyiciyi bu ortamda çalıştırmaktır. Yazma desteği şu anda deneyseldir ve değiştirilebilir. Önümüzdeki hafta derleyicinin nasıl kullanılacağı hakkında daha ayrıntılı talimatlar yayınlayacağımız için bizi izlemeye devam edin. ModernCPP blogunda CppWinRT derleyicisine daha derin bir dalış . Lütfen bize bir sorun oluşturarak geri bildirimde bulunun: https://github.com/microsoft/cppwinrt.
Son Değişiklikler
Yeni MIDL anahtar kelimeleri.
"IDL'yi modernleştirme" çabasının bir parçası olarak, midlrt aracına birkaç yeni anahtar kelime eklenir. Bu yeni anahtar sözcükler, IDL dosyalarında karşılaşılırsa yapı sonlarına neden olur.Yeni anahtar kelimeler şunlardır:
- olay
- ayarlamak
- al
- kısmi
- mühürsüz
- geçersiz kılınaabilir
- korunmuş
- importwinmd
Hata aşağıdakine benzer olacaktır:
1 >d:\os\src\onecore\com\combase\unittest\astatestservers estserver6\idl emreleasetest.idl(12) : hata MIDL2025 : [msg]sözdizimi hatası [bağlam]: bildirimci veya * ")" yakınında bekliyor
Bunu düzeltmek için, hatalı tanımlayıcıyı tanımlayıcının önündeki "@" önekiyle değiştirin. Bu, MIDL'nin rahatsız edici öğeyi anahtar sözcük yerine tanımlayıcı olarak ele etmesine neden olur.
API Güncellemeleri ve Eklemeleri
Yeni API'leri hedeflerken, en fazla sayıda Windows 10 cihazında doğru şekilde çalışmak için uygulamanızı uyarlanabilir olacak şekilde yazmayı düşünün. Daha fazla bilgi için lütfen API sözleşmeleri (10'a 10) ile özellikleri dinamik olarak algılama konusunda bkz.16299'un piyasaya sürülmesinden bu yana platforma aşağıdaki API'ler eklendi.
[kod lang="csharp"]
ad alanı Windows.ApplicationModel
{ ortak enum
StartupTaskState {
EnabledByPolicy = 4, }
} ad alanı Windows.ApplicationModel.Background {
ortak mühürlü sınıf MobileBroadbandPcoDataChangeTrigger : IBackgroundTrigger
ortak mühürlü sınıf TetheringEntitlementCheckTrigger : IBackgroundTrigger
}
ad alanı Windows.ApplicationModel.Calls {
public enum PhoneCallMedia {
AudioAndRealTimeText = 2, }
ortak mühürlü sınıf VoipCallCoordinator {
VoipPhoneCall RequestNewAppInitiatedCall(dize bağlamı, string contactName, string
contactNumber, string serviceName, VoipPhoneCallMedia media); VoipPhoneCall RequestNewIncomingCall(dize bağlamı, dize contactName, string contactNumber, Uri contactImage, string serviceName, Uri brandingImage, string callDetails, Uriringtone, VoipPhoneCallMedia media, TimeSpan ringTimeout, string contactRemoteId);
}
genel mühürlü sınıf VoipPhoneCall {
void NotifyCallAccepted(VoipPhoneCallMedia media);
}
}
ad alanı Windows.ApplicationModel.Chat {
ortak mühürlü sınıf RcsManagerChangedEventArgs
ortak
numaralandırması RcsManagerChangeType ortak mühürlü sınıf RcsNotificationManager
}
ad alanı Windows.ApplicationModel.UserActivities {
public sealed class UserActivity {
public UserActivity(string activityId);
}
public sealed class UserActivityChannel {
ortak statik void DisableAutoSessionCreation();
}
public sealed class UserActivityVisualElements {
string AttributionDisplayText { get; set; }
}
} ad alanı Windows.Devices.PointOfService {
ortak mühürlü
sınıf BarcodeScannerReport { public BarcodeScannerReport(uint scanDataType, IBuffer scanData, IBuffer scanDataLabel);
public sealed class ClaimedBarcodeScanner :
IClosable { bool IsVideoPreviewShownOnEnable { get; set; }
hidevideoPreview() boşluğu;
IAsyncOperation ShowVideoPreviewAsync();
}
ortak mühürlü sınıf UnifiedPosErrorData {
public UnifiedPosErrorData(dize iletisi, UnifiedPosErrorSeverity önem derecesi, UnifiedPosErrorReason nedeni, uint extendedReason);
}
}
ad alanı Windows.Globalization {
public static
class ApplicationLanguages { public static IVectorView GetLanguagesForUser(Kullanıcı kullanıcısı);
}
ortak mühürlü
sınıf Dili { LanguageLayoutDirection LayoutDirection { get; }
}
public enum LanguageLayoutDirection
} ad alanı
Windows.Graphics.Imaging { ortak
numaralandırma BitmapPixelFormat
{ P010 =
104,
}
} ad alanı Windows.Management.Deployment { ortak mühürlü sınıf PackageManager { IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress> RequestAddPackageAsync(Uri packageUri, IIterUri> dependencyPackageUris, DeploymentOptions deploymentOptions, PackageVolume targetVolume, IIterable optionalPackageFamilyNames, IIterable< Uri> relatedPackageUris, IIterable< Uri> packageUrisToInstall;
}
} ad alanı Windows.Media.Audio {
ortak mühürlü
sınıf AudioGraph : IClosable { IAsyncOperation< CreateMediaSourceAudioInputNodeResult> CreateMediaSourceAudioInputNodeAsync(MediaSource mediaSource);
IAsyncOperation< CreateMediaSourceAudioInputNodeResult> CreateMediaSourceAudioInputNodeAsync(MediaSource mediaSource, AudioNodeEmitter yayıcı);
}
ortak mühürlü sınıf AudioGraphSettings {
double MaxPlaybackSpeedFactor { get; set; }
}
ortak
mühürlü sınıf AudioStateMonitor ortak mühürlü sınıf CreateMediaSourceAudioInputNodeResult
ortak mühürlü sınıf MediaSourceAudioInputNode : IAudioInputNode, IAudioInputNode2, IAudioNode, IClosable
public enum MediaSourceAudioInputNodeCreationStatus
}
ad alanı Windows.Media.Capture {
public sealed class CapturedFrame : IClosable, IContentTypeProvider, IInputStream, IOutputStream, IRandomAccessStream, IRandomAccessStreamWithContentType {
BitmapPropertySet BitmapProperties { get; }
CapturedFrameControlValues
}
public enum KnownVideoProfile { HdrWithWcgPhoto =
8, HdrWithWcgVideo = 7,
HighFrameRate = 5,
VariablePhotoSequence = 6,
VideoHdr8 = 9,
}
public sealed class MediaCaptureSettings {
IDirect3DDevice Direct3D11Device { get; }
}
ortak mühürlü sınıf MediaCaptureVideoProfile {
IVectorView< MediaFrameSourceInfo> FrameSourceInfos { get; }
IMapView< Guid, nesne> Özellikler { get; }
}
ortak mühürlü sınıf MediaCaptureVideoProfileMediaDescription {
IMapView< Guid, nesne> Özellikler { get; }
dize Alt Türü { get; }
}
} ad alanı Windows.Media.Capture.Frames {
ortak
mühürlü sınıf AudioMediaFrame ortak mühürlü sınıf MediaFrameFormat {
AudioEncodingProperties AudioEncodingProperties { get; }
}
ortak mühürlü sınıf MediaFrameReference :
IClosable { AudioMediaFrame AudioMediaFrame { get; }
}
ortak mühürlü sınıf MediaFrameSourceController {
AudioDeviceController AudioDeviceController { get; }
}
ortak mühürlü sınıf MediaFrameSourceInfo {
string ProfileId { get; }
IVectorView< MediaCaptureVideoProfVideoProfileMediaDescription { get; }
}
ortak
numaralandırma MediaFrameSourceKind {
Ses = 4,
Resim = 5,
}
} ad alanı Windows.Media.Core { ortak mühürlü sınıf MediaBindingEventArgs {
void SetDownloadOperation(DownloadOperation downloadOperation);
}
ortak mühürlü sınıf MediaSource : IClosable, IMediaPlaybackSource {
DownloadOperation DownloadOperation { get; }
ortak statik MediaSource CreateFromDownloadOperation(DownloadOperation downloadOperation);
}
} ad alanı Windows.Media.Devices {
ortak mühürlü sınıf VideoDeviceController
: IMediaDeviceController { VideoTemporalDenoisingControl VideoTemporalDenoisingControl { get; }
}
ortak mühürlü sınıf VideoTemporalDenoisingControl
ortak numaralandırma VideoTemporalDenoisingMode
}
ad
alanı Windows.Media.DialProtocol { ortak mühürlü sınıf DialReceiverApp {
IAsyncOperation GetUniqueDeviceNameAsync();
}
} ad alanı Windows.Media.MediaProperties {
public static class
MediaEncodingSubtypes { public static string P010 { get; }
}
ortak numaralandırma MediaPixelFormat { P010
= 2,
} }
ad alanı Windows.Media.Playback
{ ortak mühürlü sınıf MediaPlaybackSession { MediaRotation PlaybackRotation { get; set; }
MediaPlaybackSessionOutputDegradationPolicyState GetOutputDegradationPolicyState();
}
ortak mühürlü sınıf MediaPlaybackSessionOutputDegradationPolicyState
public enum MediaPlaybackSessionVideoConstrictionReason
}
ad
alanı Windows.Media.Streaming.Adaptive { ortak mühürlü sınıf AdaptiveMediaSourceDiagnosticAvailableEventArgs {
string ResourceContentType { get; }
IReference< TimeSpan> ResourceDuration { get; }
}
ortak mühürlü sınıf AdaptiveMediaSourceDownloadCompletedEventArgs {
string ResourceContentType { get; }
IReference< TimeSpan> ResourceDuration { get; }
}
ortak mühürlü sınıf AdaptiveMediaSourceDownloadFailedEventArgs {
string ResourceContentType { get; }
IReference< TimeSpan> ResourceDuration { get; }
}
ortak mühürlü sınıf AdaptiveMediaSourceDownloadRequestedEventArgs {
string ResourceContentType { get; }
IRefResourceDuration { get; }
}
} ad alanı Windows.Networking.BackgroundTransfer {
ortak mühürlü sınıf DownloadOperation : IBackgroundTransferOperation, IBackgroundTransferOperationPriority {
void MakeCurrentInTransferGroup();
}
ortak mühürlü sınıf UploadOperation : IBackgroundTransferOperation, IBackgroundTransferOperationPriority {
void MakeCurrentInTransferGroup();
}
}
ad alanı Windows.Networking.Connectivity {
public sealed
class CellularApnContext { string ProfileName { get; set; }
}
ortak mühürlü sınıf ConnectionProfileFilter {
IReference< Guid> PurposeGuid { get; set; }
}
ortak mühürlü sınıf WwanConnectionProfileDetails {
WwanNetworkIPKind IPKind { get; }
IVectorView< Guid> PurposeGuids { get; }
}
public enum
WwanNetworkIPKind }
namespace Windows.Networking.NetworkOperators {
public sealed
class MobileBroadbandAntennaSar { public MobileBroadbandAntennaSar(int antennaIndex, int sarBackoffIndex);
}
ortak mühürlü sınıf MobileBroadbandModem {
IAsyncOperation< MobiTryGetPcoAsync();
}
genel mühürlü sınıf MobileBroadbandModemIsolation
public sealed
class MobileBroadbandPcoDataChangeTriggerDetails
public sealed class
TetheringEntitlementCheckTriggerDetails }
namespace Windows.Networking.Sockets {
public sealed class ServerMessageWebSocket : IClosable
public sealed class ServerMessageWebSocketControl
public sealed class ServerMessageWebSocketInformation public sealed class ServerStreamWebSocket : IClosable
public sealed class ServerStreamWebSocketInformation
}
namespace Windows.Networking.Vpn {
public sealed class VpnNativeProfile : IVpnProfile {
string IDi { get; set; }
VpnPayloadIdType IdiType { get; set; }
dize kimliği { get; set; }
VpnPayloadIdType IdrType { get; set; }
bool IsImsConfig { get; set; }
PCscf dizesi { get; }
}
ortak
numaralandırma VpnPayloadIdType
} ad alanı Windows.Security.Authentication.Identity.Provider {
public enum SecondaryAuthenticationFactorAuthenticationMessage {
CanceledByUser = 22,
CenterHand = 23,
ConnectionRequired = 20,
DeviceUnavaliable = 28,
MoveHandCloser = 24,
MoveHandFarther = 25,
PlaceHandAbove = 26, RecognitionFailed =
27, TimeLimitExceeded
= 21,
}
} ad alanı Windows.Services.Maps {
ortak mühürlü sınıf MapRouteDrivingOptions { IReference DepartureTime { get; set; }
}
} ad alanı
Windows.System { ortak mühürlü sınıf AppActivationResult
ortak
mühürlü sınıf AppDiagnosticInfo { IAsyncOperation< AppActivationResult> ActivateAsync();
}
ortak mühürlü sınıf AppResourceGroupInfo {
IAsyncOperation TryResumeAsync();
IAsyncOperation TrySuspendAsync();
IAsyncOperation TryTerminateAsy
}
ortak mühürlü
sınıf Kullanıcı { ortak
statik Kullanıcı GetDefault(); }
public enum UserType
{ SystemManaged
=
4, } }
ad alanı Windows.System.Diagnostics { ortak mühürlü sınıf DiagnosticInvoker {
IAsyncOperationWithProgress<DiagnosticActionResult, DiagnosticActionState> RunDiagnosticActionFromStringAsync(dize bağlamı);
}
} ad alanı Windows.System.Diagnostics.DevicePortal {
ortak mühürlü sınıf DevicePortalConnection {
ServerMessageWebSocket GetServerMessageWebSocketForRequest(HttpRequestMessage isteği);
ServerMessageWebSocket GetServerMessageWebSocketForRequest(HttpRequestMessage isteği, SocketMessageType messageType, dize protokolü);
ServerMessageWebSocket GetServerMessageWebSocketForRequest(HttpRequestMessage isteği, SocketMessageType messageType, dize protokolü, uint outboundBufferSizeInBytes, uint maxMessageSize, MessageWebSocketReceiveMode receiveMode);
ServerStreamWebSocket GetServerStreamWebSocketForRequest(HttpRequestMessage isteği);
ServerStreamWebSocket GetServerStreamWebSocketForRequest(HttpRequestMessage isteği, dize protokolü, uint gidenBufferSizeInBytes, bool noDelay);
}
ortak mühürlü sınıf DevicePortalConnectionRequestReceivedEventArgs {
bool IsWebSocketUpgradeRequest { get; }