windows - 无法在子驱动器上以管理员身份运行批处理文件
问题描述
在 Windows 10 上。重现问题的步骤。
1)从命令行使用 subst 设置驱动器号。例如:subst v: c:\temp
2) 创建一个批处理文件 c:\temp\hello.bat:
echo hello
pause
3)在Windows资源管理器中,转到v:驱动器。尝试通过右键单击并选择以管理员身份运行来运行 hello.bat。预期的 Windows 安全问题“您要允许此应用程序对您的设备进行更改吗?” 过来。当您回答是时,似乎什么都没有发生。我知道我可以在 Windows 资源管理器中转到 c:\temp,这会起作用,但这并不理想。
我认为这与以管理员身份运行的上下文无法看到子驱动器有关吗?是否有任何解决方法,能够让它工作?这样批处理文件可以在副驱动器上的 Windows 资源管理器中以管理员身份运行。
编辑:一种解决方法:在 Windows 资源管理器中,转到 c: 驱动器。然后 c:\temp. 创建 hello.bat 的快捷方式。还要勾选以管理员身份运行选项。
在 Windows 资源管理器中,返回到 v: 驱动器。双击快捷方式以管理员身份运行 hello.bat。这似乎有效。
模组:请随意将此问题移至超级用户,如果事实证明您无法在批处理文件本身中执行任何操作来完成此操作。
解决方案
推荐阅读
- ruby - 使用“选择”时出现意外输出
- bash - XARGS 与 for 循环 pr
- node.js - node.js + sqlite:如果我运行脚本两次,则会出现分段错误
- sql - 从 LargeTableWithFewValuesForColA 中选择 DISTINCT ColA 的最有效方法
- sqlite - 将表关系连接到一个输出 SQLite
- angular - 用户单击链接时如何隐藏 Angular Material Sidenav
- cmd - 从 SCCM 运行时,我的安装程序包抛出 3010 或 1641。如果我以管理员身份运行,则工作正常
- amazon-web-services - AWS S3在有人下载该对象时删除文件
- performance - 在 dart 中使用对象作为映射键会对性能产生重大影响吗?
- angular - 如何实现不同环境的文件路径