【问题标题】:Where can I learn about the "shell:" URI?我在哪里可以了解“shell:”URI?
【发布时间】:2011-04-06 00:44:23
【问题描述】:

我刚刚意识到有一个shell: URI,但每个搜索引擎似乎都认为 shell:shell 是一回事。

我发现的唯一一件事是,您可以直接在资源管理器中输入shell:startup(XP 和 7 测试)以获得明显的效果。
这已经很好了,因为没有%startup%,但我想知道它还有什么功能。

在这方面有任何 MS 参考吗?
编辑(即使它不在 MSDN 上)

【问题讨论】:

    标签: shell protocols uri explorer moniker


    【解决方案1】:

    似乎没有 MSDN 参考:不过有这个:http://www.winhelponline.com/blog/shell-commands-to-access-the-special-folders/

    编辑:MSDN 上的KNOWNFOLDERID 页面有一些关于文件夹的详细信息,但没有关于外壳:打开它们的机制。

    编辑2:这是第一个链接的内容,以防万一它消失:

    shell: 命令可用于直接从“开始”、“搜索”菜单或“运行”对话框打开特殊文件夹。例如,命令 shell:sendto 打开用户配置文件的 SendTo 文件夹 (%userprofile%\sendto)。要启动用户配置文件的 Documents 文件夹,您需要输入 shell:Personal。下面是一个完整的 shell:Windows 10/8/7/XP/Vista 的命令列表。整个列表存储在 Windows Vista 及更高版本中的以下注册表项中:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\FolderDescriptions

    Shell 的完整列表:Windows 10 中的命令

    Windows 10 有 22 个新的 shell 命令。“SkyDrive…”的东西变成了“OneDrive…”,并且早期的格式在 Windows 10 中被删除。Windows 10 的新增功能由此突出显示。

    shell:AccountPictures
    shell:Roaming Tiles
    shell:Common Programs
    shell:PublicAccountPictures
    shell:GameTasks
    shell:UserProfiles
    shell:MyComputerFolder
    shell:SearchHistoryFolder
    shell:Local Pictures
    shell:SyncSetupFolder
    shell:DpapiKeys
    shell:Retail Demo
    shell:Favorites
    shell:My Video
    shell:SearchHomeFolder
    shell:RecordedTVLibrary
    shell:System
    shell:Libraries
    shell:ThisDeviceFolder
    shell:AppsFolder
    shell:MusicLibrary
    shell:CommonVideo
    shell:OneDriveDocuments
    shell:SyncResultsFolder
    shell:Cookies
    shell:CameraRollLibrary
    shell:Original Images
    shell:Recorded Calls
    shell:3D Objects
    shell:CommonMusic
    shell:OneDrivePictures
    shell:My Pictures
    shell:Cache
    shell:Local Videos
    shell:Downloads
    shell:SavedPictures
    shell:CommonDownloads
    shell:AppData
    shell:SyncCenterFolder
    shell:PublicLibraries
    shell:VideosLibrary
    shell:My Music
    shell:ConflictFolder
    shell:SavedGames
    shell:InternetFolder
    shell:HomeGroupFolder
    shell:Quick Launch
    shell:SystemCertificates
    shell:Contacts
    shell:UserProgramFiles
    shell:Device Metadata Store
    shell:Profile
    shell:Start Menu
    shell:Common AppData
    shell:ProgramFilesCommonX64
    shell:PhotoAlbums
    shell:ProgramFilesX64
    shell:ConnectionsFolder
    shell:Administrative Tools
    shell:ThisPCDesktopFolder
    shell:OneDriveCameraRoll
    shell:PrintersFolder
    shell:DocumentsLibrary
    shell:ProgramFilesX86
    shell:Searches
    shell:Local Downloads
    shell:SearchTemplatesFolder
    shell:Common Startup
    shell:ControlPanelFolder
    shell:SendTo
    shell:ResourceDir
    shell:ProgramFiles
    shell:CredentialManager
    shell:PrintHood
    shell:MAPIFolder
    shell:HomeGroupCurrentUserFolder
    shell:User Pinned
    shell:CD Burning
    shell:Local Music
    shell:UsersLibrariesFolder
    shell:AppUpdatesFolder
    shell:Application Shortcuts
    shell:Common Start Menu
    shell:Common Start Menu Places
    shell:LocalAppDataLow
    shell:OneDrive
    shell:Templates
    shell:Programs
    shell:PicturesLibrary
    shell:Roamed Tile Images
    shell:Camera Roll
    shell:Recent
    shell:Desktop
    shell:Virtual Machines
    shell:CommonPictures
    shell:RecycleBinFolder
    shell:Screenshots
    shell:CryptoKeys
    shell:Common Templates
    shell:Startup
    shell:ImplicitAppShortcuts
    shell:UserProgramFilesCommon
    shell:Links
    shell:OEM Links
    shell:OneDriveMusic
    shell:Common Desktop
    shell:NetHood
    shell:Ringtones
    shell:Games
    shell:Common Administrative Tools
    shell:NetworkPlacesFolder
    shell:SystemX86
    shell:History
    shell:Development Files
    shell:AddNewProgramsFolder
    shell:Playlists
    shell:ProgramFilesCommonX86
    shell:PublicGameTasks
    shell:ChangeRemoveProgramsFolder
    shell:Public
    shell:SavedPicturesLibrary
    shell:CommonRingtones
    shell:Common Documents
    shell:Captures
    shell:CSCFolder
    shell:Local AppData
    shell:StartMenuAllPrograms
    shell:Windows
    shell:UsersFilesFolder
    shell:Local Documents
    shell:ProgramFilesCommon
    shell:Fonts
    shell:Personal
    

    Shell 的完整列表:Windows 8 中的命令

    shell:AccountPictures
    shell:Roaming Tiles
    shell:Common Programs
    shell:PublicAccountPictures
    shell:GameTasks
    shell:UserProfiles
    shell:MyComputerFolder
    shell:SearchHistoryFolder
    shell:SyncSetupFolder
    shell:DpapiKeys
    shell:Favorites
    shell:My Video
    shell:SearchHomeFolder
    shell:RecordedTVLibrary
    shell:System
    shell:Libraries
    shell:ThisDeviceFolder
    shell:AppsFolder
    shell:MusicLibrary
    shell:CommonVideo
    shell:SkyDriveDocuments
    shell:SyncResultsFolder
    shell:Cookies
    shell:Original Images
    shell:CommonMusic
    shell:SkyDrivePictures
    shell:My Pictures
    shell:Cache
    shell:Downloads
    shell:CommonDownloads
    shell:AppData
    shell:SyncCenterFolder
    shell:PublicLibraries
    shell:VideosLibrary
    shell:My Music
    shell:ConflictFolder
    shell:SavedGames
    shell:InternetFolder
    shell:HomeGroupFolder
    shell:Quick Launch
    shell:SystemCertificates
    shell:Contacts
    shell:UserProgramFiles
    shell:Device Metadata Store
    shell:Profile
    shell:Start Menu
    shell:Common AppData
    shell:PhotoAlbums
    shell:ConnectionsFolder
    shell:Administrative Tools
    shell:ThisPCDesktopFolder
    shell:SkyDriveCameraRoll
    shell:PrintersFolder
    shell:DocumentsLibrary
    shell:ProgramFilesX86
    shell:Searches
    shell:SearchTemplatesFolder
    shell:Common Startup
    shell:ControlPanelFolder
    shell:SendTo
    shell:ResourceDir
    shell:ProgramFiles
    shell:CredentialManager
    shell:PrintHood
    shell:MAPIFolder
    shell:HomeGroupCurrentUserFolder
    shell:User Pinned
    shell:CD Burning
    shell:UsersLibrariesFolder
    shell:AppUpdatesFolder
    shell:Application Shortcuts
    shell:Common Start Menu
    shell:LocalAppDataLow
    shell:OneDrive
    shell:Templates
    shell:Programs
    shell:PicturesLibrary
    shell:Roamed Tile Images
    shell:Camera Roll
    shell:Recent
    shell:Desktop
    shell:CommonPictures
    shell:RecycleBinFolder
    shell:Screenshots
    shell:CryptoKeys
    shell:Common Templates
    shell:Startup
    shell:ImplicitAppShortcuts
    shell:UserProgramFilesCommon
    shell:Links
    shell:OEM Links
    shell:SkyDriveMusic
    shell:Common Desktop
    shell:NetHood
    shell:Ringtones
    shell:Games
    shell:Common Administrative Tools
    shell:NetworkPlacesFolder
    shell:SystemX86
    shell:History
    shell:AddNewProgramsFolder
    shell:Playlists
    shell:ProgramFilesCommonX86
    shell:PublicGameTasks
    shell:ChangeRemoveProgramsFolder
    shell:Public
    shell:CommonRingtones
    shell:Common Documents
    shell:CSCFolder
    shell:Local AppData
    shell:StartMenuAllPrograms
    shell:Windows
    shell:UsersFilesFolder
    shell:ProgramFilesCommon
    shell:Fonts
    shell:Personal
    

    新 Shell:Windows 7 中的命令

    除了 Windows Vista 中的大部分 shell 命令外,Windows 7 还新增了以下这些命令:

    shell:Libraries
    shell:MusicLibrary
    shell:VideosLibrary
    shell:OtherUsersFolder
    shell:Device Metadata Store
    shell:PublicSuggestedLocations
    shell:SuggestedLocations
    shell:RecordedTVLibrary
    shell:UserProgramFiles
    shell:DocumentsLibrary
    shell:User Pinned
    shell:UsersLibrariesFolder
    shell:PicturesLibrary
    shell:ImplicitAppShortcuts
    shell:UserProgramFilesCommon
    shell:Ringtones
    shell:CommonRingtones
    

    shell:Windows Vista 中的命令

    shell:Common Programs
    shell:GameTasks
    shell:UserProfiles
    shell:MyComputerFolder
    shell:SyncSetupFolder
    shell:DpapiKeys
    shell:SamplePlaylists
    shell:Favorites
    shell:My Video
    shell:SearchHomeFolder
    shell:System
    shell:CommonVideo
    shell:SyncResultsFolder
    shell:LocalizedResourcesDir
    shell:Cookies
    shell:Original Images
    shell:CommonMusic
    shell:My Pictures
    shell:Cache
    shell:Downloads
    shell:CommonDownloads
    shell:AppData
    shell:SyncCenterFolder
    shell:My Music
    shell:ConflictFolder
    shell:SavedGames
    shell:InternetFolder
    shell:Quick Launch
    shell:SystemCertificates
    shell:Contacts
    shell:TreePropertiesFolder
    shell:Profile
    shell:Start Menu
    shell:Common AppData
    shell:PhotoAlbums
    shell:ConnectionsFolder
    shell:Administrative Tools
    shell:PrintersFolder
    shell:Default Gadgets
    shell:ProgramFilesX86
    shell:Searches
    shell:Common Startup
    shell:ControlPanelFolder
    shell:SampleVideos
    shell:SendTo
    shell:ResourceDir
    shell:ProgramFiles
    shell:CredentialManager
    shell:PrintHood
    shell:MAPIFolder
    shell:CD Burning
    shell:AppUpdatesFolder
    shell:Common Start Menu
    shell:LocalAppDataLow
    shell:Templates
    shell:Gadgets
    shell:Programs
    shell:Recent
    shell:SampleMusic
    shell:Desktop
    shell:CommonPictures
    shell:RecycleBinFolder
    shell:CryptoKeys
    shell:Common Templates
    shell:Startup
    shell:Links
    shell:OEM Links
    shell:SamplePictures
    shell:Common Desktop
    shell:NetHood
    shell:Games
    shell:Common Administrative Tools
    shell:NetworkPlacesFolder
    shell:SystemX86
    shell:History
    shell:AddNewProgramsFolder
    shell:Playlists
    shell:ProgramFilesCommonX86
    shell:PublicGameTasks
    shell:ChangeRemoveProgramsFolder
    shell:Public
    shell:Common Documents
    shell:CSCFolder
    shell:Local AppData
    shell:Windows
    shell:UsersFilesFolder
    shell:ProgramFilesCommon
    shell:Fonts
    shell:Personal
    

    shell:Windows XP 中的命令

    shell:Common Programs
    shell:Favorites
    shell:My Video
    shell:System
    shell:CommonVideo
    shell:LocalizedResourcesDir
    shell:Cookies
    shell:My Pictures
    shell:Cache
    shell:AppData
    shell:My Music
    shell:InternetFolder
    shell:Profile
    shell:Start Menu
    shell:Common AppData
    shell:ConnectionsFolder
    shell:Administrative Tools
    shell:PrintersFolder
    shell:ProgramFiles
    shell:Common Startup
    shell:ControlPanelFolder
    shell:SendTo
    shell:ResourceDir
    shell:ProgramFiles
    shell:PrintHood
    shell:CD Burning
    shell:Common Start Menu
    shell:Templates
    shell:Programs
    shell:Recent
    shell:Desktop
    shell:CommonPictures
    shell:RecycleBinFolder
    shell:Common Templates
    shell:Startup
    shell:Common Desktop
    shell:NetHood
    shell:Common Administrative Tools
    shell:SystemX86
    shell:History
    shell:Common Documents
    shell:Local AppData
    shell:Windows
    shell:Fonts
    shell:Personal
    

    【讨论】:

    • 谢谢!这份清单真的很有帮助。但是必须有官方参考,它有它的用途,他们甚至在 7 中对其进行了更新,我猜 MS 出于某种原因将它放入 Windows。我将更新问题以接受 MS 的任何官方参考。
    • 我知道有“已知文件夹”(以及将普通文件夹变成带有 GUID 的控制面板之类的东西的技巧),但问题是关于那个 shell:特别是 URI。 (我想知道是否有任何 MS 产品实际使用它们)。
    • 我知道它可以在资源管理器中使用。但它实际上对任何事情都不是至关重要的(我想你可以直接从注册表中获取这些文件夹,而无需使用 shell: URI),除了可能告诉新手用户去哪里修复某些东西(可能是电话支持?)。
    【解决方案2】:

    Stuart 似乎找到了一份相当详尽的文件夹列表;我会谈谈它背后的机制。此功能的可用性至少部分来自 Windows 的 Url Moniker 功能(我记得它是 IE 的一个功能,但因为它们是集成的……):请参阅http://msdn.microsoft.com/en-us/library/ms775149.aspx

    您可以通过为名字对象提供程序实现 COM 接口来注册您自己的 URL 名字对象,您也可以让您的应用充当客户端。 http://msdn.microsoft.com/en-us/library/aa741006.aspx

    您会注意到,至少某些版本的 MSDN 客户端使用此功能,而其他一些老式浏览器功能,例如 about:blank(您可以从 shell 导航到)也依赖于该机制。如果我没记错的话,IE 依赖于 wininet.dll 的 URL Moniker 提供程序实现来导航到例如 http 和 https 站点。 (gopher 和其他一些协议也在那里实现)。不过,IE 可能使用了更直接的东西,因为我对那个时代的记忆相当模糊,我并没有密切参与。

    【讨论】:

    • 这一切都很有趣。以前从未听说过 Monikers,现在我知道幕后是什么了 :)
    • 选择了,因为它已经有一段时间了。
    猜你喜欢
    • 2011-09-15
    • 1970-01-01
    • 1970-01-01
    • 2013-01-23
    • 2011-02-08
    • 1970-01-01
    • 2011-08-13
    • 2010-10-26
    • 1970-01-01
    相关资源
    最近更新 更多