我知道手动我们可以通过设置启用或禁用 8.3 短路径名支持NtfsDisable8dot3NameCreation
。
但是如何通过代码读取这个系统信息呢?实际上,我必须根据系统是否启用 8.3 来禁用某些功能。
请帮忙
谢谢
我知道手动我们可以通过设置启用或禁用 8.3 短路径名支持NtfsDisable8dot3NameCreation
。
但是如何通过代码读取这个系统信息呢?实际上,我必须根据系统是否启用 8.3 来禁用某些功能。
请帮忙
谢谢
fsutil
提供此功能:
PS C:\Windows\system32> FSUTIL.EXE 8dot3name query D:
The volume state is: 0 (8dot3 name creation is enabled).
The registry state is: 2 (Per volume setting - the default).
Based on the above two settings, 8dot3 name creation is enabled on D:
如果你想要一个 API,请使用GetVolumeInformation
,它提供了这个:
lpMaximumComponentLength [输出,可选]
一个指向变量的指针,它接收指定文件系统支持的文件名组件的最大长度(以 TCHAR 为单位)。
文件名组件是反斜杠之间的文件名部分。*lpMaximumComponentLength 指向的变量中存储的值用于指示指定的文件系统支持长名称。例如,对于支持长名称的 FAT 文件系统,该函数存储值 255,而不是之前的 8.3 指示符。使用 NTFS 文件系统的系统也可以支持长名称。