在成功编译应用程序之后,我将可执行文件传输到VS中具有post-build事件的网络驱动器。每次我启动我的项目时,它都会在我的用户凭据下打开,但它需要管理员权限才能按预期运行。所以VS问我是否要关闭VS并在管理员权限下重新启动它。之后,VS丢失了我连接的网络驱动器,因为它在管理员下运行,而不是我自己的凭据。如果我使用管理员权限进入命令提示符并键入“Net Use”命令,则表示没有连接网络驱动器。映射丢失的驱动器后,VS能够按预期编译。
现在,我的问题是,当我使用管理员权限进入命令提示符时,我的凭据是什么?如果我键入“whoami”,我会获得自己的用户名,但这并不完全正确,因为没有映射的网络驱动器,如命令提示符下没有管理员权限。即使我的用户在本地管理员组下......
答案 0 :(得分:1)
我们可以在注册表中添加一个值,以在链接的令牌之间同步映射的网络驱动器。这在TechNet中的Some Programs Cannot Access Network Locations When UAC Is Enabled下记录:
要解决此问题,请配置EnableLinkedConnections注册表值。
注册表项是
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
EnableLinkedConnections
值是DWORD
设置为1以在链接的令牌之间共享映射的驱动器,或者为默认行为共享0。