可以更改网络卷的名称。
我把名字改成了Spinal Disk
要更改网络名称,我需要:
- 在注册表中写入新名称。
- 使用 DefineDosDeviceW 等函数连接我的网络卷。此时,Windows资源管理器会读取我的猜测中的注册表。
- SHChangeNotify(SHCNE_DRIVEADD, SHCNF_PATH, root, NULL); // 确保一下。
- SendMessageTimeout(HWND_BROADCAST, WM_DEVICECHANGE, message, (LPARAM)(&dbv), - SMTO_ABORTIFHUNG, 200, &dwResult); // 再次确保!
这样做可以实现更改名称,但有时即使使用 SHChangeNotify 和 WM_DEVICECHANGE 来确保,也无法实现更改。有时候,新名称在 Windows 资源管理器中没有应用。
但是,如果我终止资源管理器并重新启动,就可以应用名称。
我正在寻找一个界面,可以刷新 Windows 资源管理器。(这个语法正确吗?对不起,我表达不好。)
是否有适当的函数?资源管理器应该重新读取注册表并刷新。