使用自定义驱动器映射运行批处理文件

使用自定义驱动器映射运行批处理文件

我想创建一个“迷你虚拟环境”来运行程序。我的正常环境和虚拟环境之间的唯一区别是驱动器映射。

  • 我有一个X:驱动器映射到\\some\network\location
  • 我有一个程序myapp.exe需要将X:驱动器映射到C:\local\path
  • 我需要在整个过程中保持X:驱动器映射\\some\network\location

我希望能够运行以下批处理文件并且不让它影响当前环境:

subst X: C:\local\path
myapp.exe

答案1

如果应用程序检查的路径尚不存在,您可以临时创建一个符号链接。应用程序将在它期望的目录中找到所需的文件,而文件系统几乎透明地将操作重定向到实际路径。请谨慎使用;例如,如果C:\local\path\已经存在,则可能会发生(非)预期的坏事。

默认情况下,Windows 仅授予管理员组中的用户创建符号链接的权限。因此,必须使用提升权限运行以下脚本,或者(Windows 7)必须通过安全策略(secpol.msc或控制面板、管理工具、本地安全策略)中的本地策略、用户权限分配部分设置权限。

mklink /D C:\local\path X:\
myapp.exe
rmdir C:\local\path

相关内容