PS C:\...\keith>$FD = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions'
>> (gp (gci $FD).PSPath).Name
>>
AccountPictures
Roaming Tiles
Common Programs
PublicAccountPictures
GameTasks
UserProfiles
MyComputerFolder
SearchHistoryFolder
Local Pictures
SyncSetupFolder
DpapiKeys
Retail Demo
Favorites
My Video
SearchHomeFolder
RecordedTVLibrary
System
Libraries
ThisDeviceFolder
AppsFolder
MusicLibrary
CommonVideo
OneDriveDocuments
SyncResultsFolder
LocalizedResourcesDir
Cookies
CameraRollLibrary
Original Images
Recorded Calls
3D Objects
CommonMusic
OneDrivePictures
My Pictures
Cache
Local Videos
Downloads
SavedPictures
CommonDownloads
AppData
SyncCenterFolder
PublicLibraries
VideosLibrary
My Music
ConflictFolder
SavedGames
InternetFolder
HomeGroupFolder
Quick Launch
SystemCertificates
AppDataProgramData
Contacts
UserProgramFiles
Device Metadata Store
Profile
Start Menu
Common AppData
ProgramFilesCommonX64
PhotoAlbums
ProgramFilesX64
ConnectionsFolder
Administrative Tools
ThisPCDesktopFolder
OneDriveCameraRoll
PrintersFolder
AppMods
DocumentsLibrary
AppDataDocuments
ProgramFilesX86
AppDataFavorites
Searches
Local Downloads
SearchTemplatesFolder
Common Startup
ControlPanelFolder
SendTo
ResourceDir
ProgramFiles
CredentialManager
PrintHood
MAPIFolder
HomeGroupCurrentUserFolder
User Pinned
CD Burning
Local Music
UsersLibrariesFolder
AppUpdatesFolder
Application Shortcuts
Common Start Menu
Common Start Menu Places
LocalAppDataLow
OneDrive
Templates
Programs
PicturesLibrary
Roamed Tile Images
Camera Roll
Recent
AppDataDesktop
Desktop
CommonPictures
RecycleBinFolder
Screenshots
CryptoKeys
Common Templates
Startup
ImplicitAppShortcuts
UserProgramFilesCommon
Links
OEM Links
OneDriveMusic
Common Desktop
NetHood
Ringtones
Common Administrative Tools
NetworkPlacesFolder
SystemX86
History
Development Files
AddNewProgramsFolder
Playlists
ProgramFilesCommonX86
PublicGameTasks
ChangeRemoveProgramsFolder
Public
SavedPicturesLibrary
CommonRingtones
Common Documents
Captures
CSCFolder
Local AppData
Windows
UsersFilesFolder
Local Documents
ProgramFilesCommon
Fonts
Personal
大多数(如果不是全部)各种
HKLM\...\FolderDescriptions
条目的名称都与该Shell:
命令一起使用。您可以使用PowerShell列出它们:然后,有一些 CLSID 与
Shell:
格式中的命令一起使用Shell:::{<GUID>}
。HKCR\CLSID 的任何具有子项的ShellFolder
子项都可能是可疑的,因此我们可以找到这些:但其中许多是另一个项的子项,例如控制面板项。以下是获取这些列表的方法:
我见过的最好的是来自Nirsoft.net的 Shell View Menu(64 位和 32 位) 。有很多条目,所以要准备好。但是这个软件非常适合这个。
我使用了许多 Nirsoft 工具,因为它们很好。
这是Shell View 的屏幕截图。没有显示的是 CLSID 字段,但是你想要的就在这里
您正在寻找的是IKnownFolder接口(Shell32.dll 的一部分)。
这提供了所有工具来获取有关这些特殊文件夹的信息。
Windows SDK 有几个示例说明如何使用它。
各种版本的 Windows(自 Vista 以来)处理此信息的方式存在细微差别,但自 Vista 以来的所有 Windows 版本都支持 IKnownFolders 界面,并为您提供一致的界面,因此您无需处理差异你自己。
将列出您可以使用Start-Run
shell:
中的命令打开的所有文件夹。例如
将列出 Windows 的应用商店应用程序(加上 Internet 协议)以及如何启动它们。
搜索注册表需要一分钟左右的时间,并且在对其进行排序时,无法显示进度。
开始绘制 3D