我可以使用Windows中的快捷方式为应用程序设置环境变量吗?

use*_*203 31 windows shortcuts environment-variables

我有一种感觉,我应该能够在应用程序生命周期的基础上将目录添加到PATH环境变量,但我无法找到如何执行此操作.是否可以向Windows快捷方式添加参数,该快捷方式将目录附加到PATH的当前值以供链接的应用程序使用?

Jen*_*ens 27

如下所述:http://www.labs64.com/blog/2012/06/set-environment-variables-in-windows-shortcut/ 您也可以在没有bat文件的情况下执行此操作.

将目标设置为:

C:\Windows\System32\cmd.exe /c "SET path=%path%&& START /D ^"C:\Program Files (x86)\Notepad++^" notepad++.exe"
Run Code Online (Sandbox Code Playgroud)

要避免在再次关闭之前看到命令提示符一瞬间,您应该设置

Run: Minimized 
Run Code Online (Sandbox Code Playgroud)

在快捷方式选项卡上

(在Windows 7,Windows 10上测试)

  • 似乎设置路径后&&之前不需要空格,因为新路径将有额外的空间(在Win 10上测试)。即它应该是: C:\Windows\System32\cmd.exe /c "SET path=%path%&& START /D ^"C:\Program Files (x86)\Notepad++^" notepad++.exe" (2认同)

GvS*_*GvS 24

让快捷方式执行批处理文件(.cmd),即

  • 设置环境变量
  • 执行应用程序
  • 您使用"START"来执行应用程序,这将在另一个进程中启动应用程序,但它将复制环境.您不必等待应用程序完成.
  • 现在您可以退出批处理文件.

应该是这样的:

@echo off
set path=%path%;C:\My Folder
start "Path to my exe"
Run Code Online (Sandbox Code Playgroud)

  • Windows 7任务栏的任何解决方法?我有一个快捷方式,有这样的环境变量修改 - 出现另一个图标,正确的进程运行. (7认同)
  • 您可能需要将其更改为"start"""我的exe的路径"`,因为`start`命令可以将第一个引用的字符串解释为窗口标题... (5认同)
  • 更新到 Windows 10 版本 1809 后,此方法似乎停止工作 (2认同)

Wil*_*ord 5

直接链接到批处理文件会产生一个令人讨厌的控制台,您可能希望避免这种情况。这是一个解决方法。更简单的解决方案是使用链接中的“启动最小化”选项,但在 Windows 7 上,您会看到一个瞬时控制台点亮任务栏。

启动.bat:

@echo off
IF "%1" == "" GOTO Error
IF "%2" == "" GOTO Error
IF NOT EXIST %2 GOTO Error
SET PATH=%1;%PATH%
start %2
GOTO End

:Error
echo Problem!
pause

:End
Run Code Online (Sandbox Code Playgroud)

快捷目标:

MyPath = "C:\MyApp"
Set shell = WScript.CreateObject("WScript.Shell")
cmd = "start.bat " & MyPath & " MyApp.exe"
shell.Run cmd, 0, false
Set env = Nothing
Set shell = Nothing
Run Code Online (Sandbox Code Playgroud)