Windows 10:修复默认新文件夹视图自定义

Windows 10:修复默认新文件夹视图自定义

我想将默认的新文件夹视图设置为Documents,无论其内容是什么。

我已将 中的所有驱动器和子文件夹设置"optimize this folder for" 为 视图Documents,并将其应用于所有文件夹,但是当我创建新文件夹(尤其是在桌面中)并向其中添加一些图像时,文件夹视图更改为Pictures。有什么建议吗?

答案1

Explorer 根据 BagMRU 键中的完整命名空间路径对已保存的文件夹视图进行索引。因此,桌面上的文件夹可以保存不同的视图:

  • FolderName
  • This PC\Desktop\FolderName
  • This PC\C:\Users\<UserProfileFolder>\Desktop\FolderName

Also apply this template to all subfolders从文件夹对话框中选择时PropertiesInherit将在注册表中该文件夹的 PropertyBag 下创建一个名为的子项。

当文件夹首次显示在资源管理器中时,其所有命名空间检查祖先,而不是文件系统祖先是否Inherit有子项。如果找到,它将覆盖内容嗅探和文件中指定的任何 FolderType desktop.ini

Process Monitor 揭示了一个有趣(且有用)的事实:尽管无法通过 UI 设置继承这台电脑, 这根/虚拟 桌面以及其他非文件系统位置,探索者仍会检查其 PropertyBags 中的Inherit子项。因此,为根桌面创建Inherit子项将控制在桌面上创建的文件夹的 FolderType,以及所有其他文件系统文件夹,包括位于这台电脑,但令人讨厌的例外是Downloads。搜索结果和库是虚拟文件夹,不受此设置的影响。

要为根桌面设置继承:

  1. 通过查看然后关闭来确保根桌面视图的 PropertyBag 存在探索者. 要导航到 rooted 桌面:

    • 这台电脑或者快速访问Up,点击探索者地址栏。
    • 将命令复制并粘贴shell:Desktop探索者地址栏或Run对话框。
  2. NodeSlot通过检查注册表项下的 注册表值来确定袋子编号:HKCU\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU 使用:

    • 电源外壳

        (gp 'HKCU:\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU').NodeSlot
      
    • 注册表编辑器在此处输入图片描述

  3. 创建注册表项:

    • HKCU:\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\<Bag#>\Shell\Inherit其中有两种 REG_SZ 类型:
      • FolderType其值为Documents
      • SniffedFolderType其值为Documents

    电源外壳(在第一行替换实际的袋子编号,然后将整个块粘贴到电源外壳):

    $BagNum = <your bag #>
    $Path   = ( mkdir "HKCU:\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\$BagNum\Shell\Inherit" -Force ).FullName
    'FolderType' , 'SniffedFolderType' | ForEach {
        New-ItemProperty $Path $_ -Value 'Documents' | out-null
    }
    

    注册文件模板(替换关键路径中的包号):

    Windows Registry Editor Version 5.00
    
    [HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\<Bag#>\Shell\Inherit]
    "FolderType"="Documents"
    "SniffedFolderType"="Documents"
    

以上是快速测试/验证编辑是否有效的好方法。但是,如果您过去曾被内容嗅探和其他默认行为所困扰,并且一致性是您的目标,那么最好从“干净”开始 --- 删除以前保存的文件夹视图,以确保您想要的视图全面应用。这是通过以下方式实现的:

  1. 删除BagMRUBags键。
  2. 注销并重新登录或重新启动 Shell 以清除所有缓存的视图信息。

以下电源外壳将执行此操作,并直接打开和关闭 Explorer 到桌面 --- 使桌面包成为 #1。然后它将创建键INherit及其值。

Set-Location 'HKCU:\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell'
'BagMRU' , 'Bags' | Remove-Item -Recurse
Get-Process explorer | Stop-Process
Sleep 5
($Shell = New-Object -com shell.application).Open("shell:Desktop")
Sleep 5
@($Shell.Windows()).Quit()
Sleep 5
$Path  = (mkdir 'Bags\1\Shell\Inherit' -Force).FullNName

'FolderType' , 'SniffedFolderType' | ForEach {
    New-ItemProperty $Path $_ -Value 'Documents' | out-null
}

相关内容