windows下的mapped driver及其真实路径
由于经常使用windows下自带的subst命令,把一个长路径映射成一个短路径,用起来倒是蛮方便的。
subst u: d:\xxxxxxxxx\********\******
想删除,直接subst u: /d
可是,它有两个大大的缺陷:
1. 它是会话相关的,重启机器,这个映射就会自动丢掉。
2. 由于是会话相关的,只对当前的session id 有效,也就是说,只对当前用户有效。如果你创建了一个路径的映射,而有一个系统服务想访问它,则访问不到。得自己写代码去取得真实路径。或者把服务的log on属性改为当前用户。
这些都不是好的解决问题的办法。
偶一搜索,发现http://code.google.com/p/psubst/ 里的psubst正是我们想要的,它把路径放到HKLM下边,这样所有用户都应该能访问得到。同时也不会重启丢掉路径。
它会在:
REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices]
"Z:"="\\??\\C:\\Documents and Settings\\All Users\\Shared Documents"