Answers:
可能这不是文件权限问题,但与以下内容有关:
由于几乎所有用户都在XP中使用了管理员帐户(因为大多数程序员都不想让程序使用受限帐户工作),因此Microsoft从Vista开始制作了“受限版本”的管理员帐户,在某些情况下,这是两个“版本”计为不同的用户(因为它们是单独的会话)。
尝试启动提升的Windows资源管理器(即使用“以管理员身份运行”启动的Windows资源管理器),然后重新创建所有网络共享,这可以解决问题。
此MSDN博客条目中说明了必须重新创建共享的原因:
编辑:来自博客条目的相关位(重点是我的):
为简化起见,假设您以启用了UAC的管理员身份运行(尽管为了安全起见,最好以标准用户身份运行)。登录时,您将创建一个新令牌。然后,我们检测到您已启用UAC,第二次登录,最后得到一个新的(高度受限)令牌,该令牌用于启动外壳程序。有两个单独的登录事件。
(...)
此便利功能使您更容易遇到映射的网络驱动器问题。在Windows 2000 SP2之前,设备名称始终保持全局可见,直到将其明确删除或重新启动系统为止。出于安全原因,我们从Windows 2000 SP2开始修改了此行为。从现在开始,所有设备都与身份验证ID(LUID)关联-身份验证ID是为每个登录会话生成的。
(...)
因为这些映射的驱动器与LUID关联,并且由于提升的应用程序使用在单独的登录事件期间生成的其他LUID,所以提升的应用程序将不再看到该用户的任何映射驱动器。
Alberto Martinez的答案描述了为什么无法访问映射的网络驱动器。
这是解决问题的注册表修复程序:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
退出regedit并重新启动计算机。
以管理员身份启动cmd,输入命令即可net use z: \\net\path /persistent:yes
。我做过的另一件事是,将cmd固定在任务栏上,然后在properties-> Advanced中将cmd固定为任务以管理员身份运行,然后在/ target之后添加了/ K z ::文本框,因此变成:%windir%\system32\cmd.exe /K z:
。因为设置“开始于”参数似乎无效。这导致任务栏上的图标以admin身份启动cmd窗口,并在映射的驱动器上显示提示。并且不要忘记再次进入属性并自定义字体,颜色,窗口大小和位置,以及文本回滚缓冲区和命令历史记录缓冲区的大小!