用户文件夹的行为(“库”下的文件夹)

用户文件夹的行为(“库”下的文件夹)

这篇文章的背景与这个但要复杂得多。这一切都始于以下来自一个驱动器

在此处输入图片描述

  1. 如果将鼠标悬停在任何文件夹的名称上,它会显示路径为

    {drive-letter}:\Users\{username}\OneDrive\Documents\
    

    在此处输入图片描述

  2. 但实际上,这与属性选项卡的内容相冲突:

    {drive-letter}:\Users\{username}\
    

    此外,这次他们的名字中没有带有那些花哨的“我的”前缀。

    在此处输入图片描述

  3. 此外,目录中没有“我的音乐”、“我的图片”或“我的视频”文件夹{drive-letter}:\Users\{username}\OneDrive\Documents\。这与第 1 点相矛盾。此外,如果您尝试访问这些文件夹,则会出现以下对话框:

    在此处输入图片描述

    而不是类似于这个的东西:

    在此处输入图片描述

  4. 因此,我尝试从命令行(无需管理员的 PowerShell)访问它们,结果如下:

    在此处输入图片描述

    没有看到任何错误,我能够在文件夹内进行更改。
    更改也显示在此处:

    在此处输入图片描述

    这证明{drive-letter}:\Users\{username}\OneDrive\Documents\{My whatever}{drive-letter}:\Users\{username}\{whatever}是同一个目录。

  5. 旨在修复一个驱动器错误消息问题,我将文件夹移到了里面{drive-letter}:\Users\{username}\OneDrive\。此时,系统将其识别为常规文件夹并自动创建它们的副本。因此错误消息仍然存在。

因此,我基本上想修复第 3 点中描述的访问问题,我相信这会阻止消息出现。有什么办法吗?

答案1

库不是文件夹。它们是所选文件夹内容的索引。“有什么区别?”实际上,区别在于您可以将文件添加到不同文件夹中的库中。它们不存在于硬盘驱动器的任何地方(无论如何不是文件夹),您将无法找到它们的路径。库仅存在此处:

在此处输入图片描述

默认情况下,库具有C:\Users\<username>\OneDrive\共享其名称的文件夹作为其索引内容的唯一文件夹。

在此处输入图片描述

这就是为什么更改其中一个用户文件夹的内容会导致相关库中发生相应的更改。但是,如果右键单击其他文件夹,您将看到一个Include in library子菜单,其中的选项与库名称相匹配。这允许您将此附加文件夹的内容添加到库中。例如,如果您有一个第三方应用程序,它不将其内容文件存储在 Windows 提供的文件夹中,这将非常有用。将另一个文件夹添加到给定的库后,您会发现两个文件夹的内容都显示在该库中,就好像内容都在同一个文件夹中一样……即使它们不在同一个文件夹中。

你需要了解的另一件事是My -,从技术上讲,这些文件夹也不是文件夹。它们绝对不是你的图书馆。

这些My -文件夹被称为“连接点”,其概念类似于 *nix 样式的“符号链接”。它基本上是一个文件,应用程序应该将其视为硬盘上其他地方的文件夹。这使得单个文件夹看起来像是在两个地方,而实际上,其中一个实际上是连接点。例如,D:\Users\<username>\Documents\My Pictures指向D:\Users\<username>\Pictures

Windows Vista 及更新版本使用这些My -连接点来保持与 Windows XP 中使用的文件系统布局的向后兼容性。其理念是,如果期望 XP 样式文件布局的应用程序尝试访问文件My -夹,它实际上将访问这些连接点指向的文件夹。但是,由于这些特定连接点仅用于向后兼容,因此用户无法直接访问它们,并且它们通常被标记为“隐藏”,以便用户不会对它们感到困惑。因此,当您尝试访问它们时会收到错误。

根据您所说的其他内容,似乎您不知何故得到了从OneDrive\Documents到 的连接或符号链接(Vista 和更新版本都支持这两种) D:\Users\<username>\Documents。事情不应该是这样的。OneDive 的 Documents 文件夹应该是一个与 中的文件夹完全不同的文件夹C:\Users\<username>\。我相信这是您问题的根本原因。但是,由于不清楚这是如何发生的,因此尝试将其恢复是不安全的。首先需要确定这种异常的原因,以免在尝试修复最终只会带来烦恼的问题时破坏其他东西。

相关内容