如何将Windows短路径(8.3)应用于网络路径?

如何将Windows短路径(8.3)应用于网络路径?

按照我的问题在超级用户这里在 StackOverFlow 上

我注意到了Windows 8.3路径仅适用于本地路径,如:,C:\Program Files而不适用于网络路径,如:(\\MyNetworkPAth\Shared folder\MyFooFolder它返回相同的路径)。

例如,C:\Program Files使用 .NET 代码解码 Windows 8.3 路径:

public static extern int GetShortPathName([MarshalAs(UnmanagedType.LPTStr)] string path, [MarshalAs(UnmanagedType.LPTStr)] StringBuilder shortPath, int shortPathLength);

StringBuilder shortPath = new StringBuilder(248);
GetShortPathName("C:\Program Files", shortPath, shortPath.Capacity);
string destinationPath = shortPath.ToString(); --> "C:\PROGRA~1"

网络路径:

StringBuilder shortPath = new StringBuilder(248);
GetShortPathName("\\MyNetworkPAth\Shared folder\MyFooFolder", shortPath, shortPath.Capacity);
string destinationPath = shortPath.ToString(); --> "\\MyNetworkPAth\Shared folder\MyFooFolder"

是否可以将 Windows 8.3 路径应用于网络路径?

答案1

在文件系统上应用名称的能力8dot3取决于以下主题:

  1. 特定路径应与卷相关。只有当特定路径“位于”卷上时,才能配置此卷以支持名称8dot3
  2. 特定路径应该与配置为支持名称的卷相关8dot3

要更深入地了解其工作原理以及如何配置卷以支持 8dot3名称,请参阅fsutil 8dot3name命令描述。

要列出系统上的所有卷,请使用以下diskpart命令:

  • ⊞ Win+R
  • diskpart Enter
  • list volume Enter

显示的卷列表可以帮助了解特定路径是否可以转换为格式8dot3

其他参考资料: 命名卷

相关内容