本地计算机上文件夹的 UNC 路径

Posted

技术标签:

【中文标题】本地计算机上文件夹的 UNC 路径【英文标题】:UNC path to a folder on my local computer 【发布时间】:2011-02-16 17:59:03 【问题描述】:

是什么,如何访问它?

我试过了:

    文件夹的安全性 - 设置为所有人完全控制(现在!) 共享权限 - 设置为所有人完全控制(现在!)

可以看到\\<computername>里面的文件夹,但是进不去(<foldername>是无法访问的。)

错误信息:

您可能没有使用此网络资源的权限。请联系此服务器的管理员以了解您是否具有访问权限。无法访问网络位置。有关网络故障排除的信息,请参阅 Windows 帮助。

我的电脑没有连接到网络。

【问题讨论】:

喜欢\\.\C:\file? 【参考方案1】:

如果您要使用 UNC 访问本地计算机(或任何计算机),则需要设置共享。如果您尚未设置共享,则可以使用默认管理共享。示例:

\\localhost\c$\my_dir

... 通过 C: 驱动器上的 UNC 访问名为“my_dir”的文件夹。默认情况下,您机器上的所有硬盘驱动器都与 c$、d$ 等隐藏共享共享。

【讨论】:

感谢您的回复威廉。仅当您是本地管理员时才有效吗?我得到'Windows 找不到'\\localhost\c$\s-s-rSFileShare'。检查拼写并重试,或尝试通过单击“开始”按钮然后单击“搜索”来搜索项目。我是“调试器用户”。 (=高级用户?) \\localhost 和 \\127.0.0.1 完全相同。我怀疑如果 \\localhost 不起作用,那是因为没有安装 MS Loopback 适配器。两者都应该同样适合您。 我需要为我的工作计算机上的 Q 驱动器获取 UNC。我该怎么做呢? 如果您尝试使用用于映射网络驱动器的 GUI 或命令行 net use 映射到本地驱动器的根目录,您必须基本上使用 @WilliamLeara 的建议 (\\localhost\C$ )。另一种选择是mklink /j C:\self C:\ ,如果映射到O:,则后跟subst O: \\?\C:\self。出于某种原因,使用\\?\C\\.\C 带或不带终端$\ $\ :\ 不起作用,(Windows 10)也不能直接使用subst o: \\?\c$(w 或没有$\ $\ :\ ) 有一种方法可以通过类 UNC 格式访问本地计算机上的文件,而无需设置网络共享。您可以使用以下格式:\\?\C:\my_path_to_a_file_or_folder 访问本地 C: 驱动器上的文件或文件夹。另请参阅下面 Jerzy 的答案。【参考方案2】:

在 Windows 上,您还可以使用前缀为 \\?\ 的 Win32 文件命名空间来引用本地目录:

\\?\C:\my_dir

见this answer for description.

【讨论】:

正如您所说,这是本地目录的路径,但根据原始问题,它不是 UNC(本身)。要获得以\\?\ 开头的UNC 路径,您应该使用\\?\UNC\localhost\my_shared_dir\ (仍然需要设置共享)。【参考方案3】:

我不得不:

创建本地管理员 Add a Microsoft Loopback adapter 将该位置引用为\\127.0.0.1\s-s-rSFileShare

【讨论】:

以上是关于本地计算机上文件夹的 UNC 路径的主要内容,如果未能解决你的问题,请参考以下文章

Windows 7 - 无网络 - 我需要在本地伪造 UNC 路径以进行开发/测试吗?

无法访问 Powershell 远程会话中的 UNC 路径

我如何使用模拟功能通过UNC在远程计算机上操纵文件/目录?

File.Move 不适用于 UNC 路径

更新 Access 链接表以使用 UNC 路径

在 C# 中将 UNC 路径转换为本地路径