如何通过注册表项隐藏资源管理器及SaveFileDialog中的「网络」?
解决SaveFileDialog导航窗格隐藏「网络」的注册表项方案
- 对应「文件夹选项>显示网络」功能的注册表项路径:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced - 具体控制键值:
ShowNetHood,类型为DWORD- 值设为
1:显示导航窗格中的「网络」链接 - 值设为
0:隐藏导航窗格中的「网络」链接
- 值设为
C#临时切换的实现步骤
- 弹出SaveFileDialog前,读取
ShowNetHood的原始值并暂存 - 将
ShowNetHood设置为0 - 完成文件保存操作后,恢复
ShowNetHood的原始值
注意:修改注册表需要程序具备相应权限,修改后可通过发送SHChangeNotify消息刷新资源管理器,确保设置即时生效。
之所以采用这个方案,是因为无法直接自定义SaveFileDialog的导航窗格,而VPN环境下访问「网络」会导致C#应用崩溃,通过系统原生注册表项切换是可行的替代方法。
内容的提问来源于stack exchange,提问作者codenamezero
相关产品推荐
相关产品推荐

