Win10系统 - Win10系统官方网站

Win10 SDK预览版本18995为开发人员启动

 Win10 SDK预览版本18995为开发人员启动

Win10 SDK预览的另一个更新今天可供开发人员使用。 此版本将内部版本号提高到18995,该版本比Win10的Fast ring Insider分支上当前可用的版本落后一个版本。 现在可以从Windows Insider网站下载新的SDK预览。

 

以下是新功能的概述:

 

 

工具更新

--消息编译器(mc.exe)

 

现在,在.mc文件中检测Unicode字节顺序标记(BOM)。 如果.mc文件以UTF-8 BOM开头,它将被读取为UTF-8文件。 否则,如果它以UTF-16LE BOM开始,则将其读取为UTF-16LE文件。 如果指定了-u参数,它将被读取为UTF-16LE文件。 否则,将使用当前代码页(CP_ACP)进行读取。

现在,避免了由配置宏冲突引起的MC生成的C / C ++ ETW帮助器中的一定义规则(ODR)问题(例如,将两个具有MCGEN_EVENTWRITETRANSFER定义冲突的.cpp文件链接到同一二进制文件中时,MC生成的ETW帮助器 现在将遵守每个.cpp文件中MCGEN_EVENTWRITETRANSFER的定义,而不是任意选择一个。

 

--Windows跟踪预处理器(tracewpp.exe)

 

现在支持Unicode输入(.ini,.tpl和源代码)文件。以UTF-8或UTF-16字节顺序标记(BOM)开头的输入文件将被读取为Unicode。不使用BOM表开头的输入文件将使用当前代码页(CP_ACP)进行读取。对于向后兼容,如果指定-UnicodeIgnore命令行参数,则以UTF-16 BOM开始的文件将被视为空。

现在支持Unicode输出(.tmh)文件。默认情况下,将使用当前代码页(CP_ACP)对输出文件进行编码。使用命令行参数-cp:UTF-8或-cp:UTF-16生成Unicode输出文件。

行为更改:tracewpp现在将所有输入文本转换为Unicode,以Unicode执行处理,并将输出文本转换为指定的输出编码。早期版本的tracewpp避免了Unicode转换,并假设使用单字节字符集来执行文本处理。在输入文件不符合当前代码页的情况下,这可能导致行为更改。如果出现问题,请考虑将输入文件转换为UTF-8(带有BOM)和/或使用-cp:UTF-8命令行参数,以避免编码不明确。

 

--TraceLoggingProvider.h

 

现在,避免了由冲突的配置宏引起的一定义规则(ODR)问题(例如,将两个具有TLG_EVENT_WRITE_TRANSFER定义冲突的.cpp文件链接到同一二进制文件中时,TraceLoggingProvider.h帮助程序现在将尊重每个中的TLG_EVENT_WRITE_TRANSFER的定义。 cpp文件,而不是任意选择一个)。

在C ++代码中,已更新TraceLoggingWrite宏,以使用可变参数模板在相似事件之间实现更好的代码共享。

 

--使用Device Guard签名对应用程序进行签名

 

我们使您更轻松地签署应用程序。 Device Guard签名是Microsoft Store for Business和Education中可用的Device Guard功能。 签名使企业能够保证每个应用程序都来自受信任的来源。 我们的目标是使对您的MSIX程序包的签名更加容易。 可以在以下位置找到有关Device Guard签名的文档:https://docs.microsoft.com/zh-cn/windows/msix/package/signing-package-device-guard-signing

 

--重大变化

 

删除api-ms-win-net-isolation-l1-1-0.lib:在此版本中,已将api-ms-win-net-isolation-l1-1-0.lib从Windows SDK中删除。 与api-ms-win-net-isolation-l1-1-0.lib链接的应用程序可以替换为OneCoreUAP.lib。

删除IRPROPS.LIB:在此版本中,irprops.lib已从Windows SDK中删除。 链接到irprops.lib的应用程序可以切换到bthprops.lib作为替代产品。

 

 

此版本还提供许多API更改和更新。 有关更多信息,您可以查看Microsoft的完整发行说明。 与往常一样,您可以在Visual Studio中安装内部版本18995和以前的SDK。