概述

创建 Explorer 中网盘图标

相关说明

[toc]

实现逻辑

使用 IShellFolder + Shell Namespace Extension

相关 API

接口 / 技术用途
IShellFolder / IShellViewShell 命名空间扩展基础接口
IStorageProviderSyncRootManager云文件同步根管理
CfRegisterSyncRoot / cfapi.dll云盘占位符文件同步
SHCreateItemFromParsingName创建资源管理器项目
ShellExecuteEx打开目录或资源
注册 CLSID 到 MyComputer\Namespace插入“此电脑”快捷项
ShellFolder 注册表键控制图标行为和样式

快速实现

快速实现一个网盘图标,无具体功能

Windows Registry Editor Version 5.00
 
; 创建一个出现在“此电脑”中的入口(图标 + 路径)
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\{B899D869-05C0-404D-ABB5-0D55E4197EF5}]
@="我的云盘"
 
[HKEY_CLASSES_ROOT\CLSID\{B899D869-05C0-404D-ABB5-0D55E4197EF5}]
@="我的云盘"
"System.IsPinnedToNameSpaceTree"=dword:00000001
 
[HKEY_CLASSES_ROOT\CLSID\{B899D869-05C0-404D-ABB5-0D55E4197EF5}\DefaultIcon]
@="C:\\Program Files\\MyCloudDisk\\CloudDisk.ico"
 
[HKEY_CLASSES_ROOT\CLSID\{B899D869-05C0-404D-ABB5-0D55E4197EF5}\InProcServer32]
@="shell32.dll"
"ThreadingModel"="Both"
 
[HKEY_CLASSES_ROOT\CLSID\{B899D869-05C0-404D-ABB5-0D55E4197EF5}\ShellFolder]
"Attributes"=dword:f080004d
 
[HKEY_CLASSES_ROOT\CLSID\{B899D869-05C0-404D-ABB5-0D55E4197EF5}\Instance]
"CLSID"="{0E5AAE11-A475-4C5B-AB00-C66DE400274E}"
 
[HKEY_CLASSES_ROOT\CLSID\{B899D869-05C0-404D-ABB5-0D55E4197EF5}\Instance\InitPropertyBag]
"Attributes"=dword:11
"TargetFolderPath"="C:\\Users\\YourName\\BaiduNetdiskDownload"