2014-02-27 104 views
1

没有关于FILE_ATTRIBUTE_TEMPORARYin MSDN的更多信息。哪些Windows版本支持FILE_ATTRIBUTE_TEMPORARY?

我需要知道哪个版本的Windows支持它,特别是XP支持它吗?

+0

如果我做downvote,我会downvote,因为从文档清楚知道,哪些属性是支持的。 – user2120666

+0

@ user2120666是吗?我找不到任何明确的答案。也许你可以发布一个链接,或添加相关文本作为答案。 – mjs

+1

例如:FILE_FLAG_SESSION_AWARE - Windows Server 2008 R2,Windows Server 2008和Windows Server 2003:此标志在Windows Server 2012之前不受支持。其他属性受支持的最低客户机/服务器支持。这适用于MSDN中的其他功能/结构。 – user2120666

回答

3

文件属性常数是位掩码:

https://serverfault.com/a/517023

http://msdn.microsoft.com/en-us/library/windows/desktop/gg258117%28v=vs.85%29.aspx

鉴于FILE_ATTRIBUTE_TEMPORARY是一个相当低的值(256)和作为FILE_ATTRIBUTE_NO_SCRUB_DATA,其中有一个属性,例如在XP上明确支持更高的值131072(0x20000),期望FILE_ATTRIBUTE_TEMPORARY也被支持似乎是合理的。

+0

FILE_ATTRIBUTE_TEMPORARY的问题是,没有真正的方法来检查操作系统是否承认它。如果文件足够大以注意不同之处,则可以将其归因于交换。 – sashoalm

5

您引用的页面表示自Windows XP(用于桌面)以来,支持该功能。在备注部分,当不同版本的行为不同时,会有明确的注释。这些部分中没有提及FILE_ATTRIBUTE_TEMPORARY,所以您应该能够安全地假定FILE_ATTRIBUTE_TEMPORARY按照Windows XP的描述工作。

我也用它在Windows XP上的程序没有问题。

+0

@eryksun:在整个MSDN参考文档中,支持的最小客户端和服务器字段告诉您WinAPI的发展过程中的哪一点,该功能可用。这通常在API(功能/结构)级别。有时候,现有的API会用新的标志扩展,所以你必须阅读所有的评论。请参阅http://msdn.microsoft.com/en-us/library/windows/desktop/aa383745(v=vs.85).aspx –

+0

Windows SDK支持的文档中的“最低支持”字段(以前称为作为平台SDK),这与技术支持分离。目前的SDK不支持定位Windows NT 3.1。 XP的四月份截止日期主要是关于安全更新和可能的激活。这不是真正的技术支持。 SDK的下一个版本是否切断Windows XP仍有待观察。鉴于开发人员的需求,Visual Studio团队如何将XP支持恢复到原来的状态,如果他们马上推出,我会感到惊讶。 –

相关问题