sla*_*dan 6 windows windows-7 environment-variables file-shortcut
我想创建一个 Windows 快捷方式,该快捷方式javaw.exe在可变目的地打开。这个目的地是我的系统环境变量的内容%MY_OWN_JAVA_HOME%。
我尝试这样做:
New=>Shortcut%MY_OWN_JAVA_HOME%\bin\javaw.exe -cp ......Next,Finish问题是,环境变量是在创建时计算的。当我打开此环境变量的设置时,将使用该变量的当前值。
如何将变量保留为快捷方式的目标?
您应该仍然能够使用 VBScript 或 powershell 中的 COM 对象创建带有环境变量的快捷方式。方法“ CreateShortcut ”(这里的参数还有更多详细信息)可以做到这一点。虽然最初是一个 vbscript 解决方案,但您可以从 powershell 提示符中调用它,如下所示:
$WshShell = New-Object -comObject WScript.Shell
$Shortcut = $WshShell.CreateShortcut("C:\Users\Public\Desktop\My Java Shortcut.lnk")
$Shortcut.TargetPath = "%MY_OWN_JAVA_HOME%\javaw.exe"
$Shortcut.Arguments = "-cp"
$Shortcut.Save()
Run Code Online (Sandbox Code Playgroud)
请注意,参数不会进入目标路径。如果您的环境变量包含空格,它也可能不起作用。这样做的好处是,您确实拥有一个真正的快捷方式,而不是一些包装器,缺点是,您永远无法通过其属性对话框更改此快捷方式。一旦执行此操作,变量就会再次被替换。
如果你想要一个包装器,我还建议使用一个完全无声的 vbs 文件。创建一个新的文本文件并粘贴该行
CreateObject("WScript.Shell").Run """%MY_OWN_JAVA_HOME%\bin\javaw.exe"" -cp", , False
Run Code Online (Sandbox Code Playgroud)
在那里并将其保存为“runmyjava.vbs”并创建该文件的快捷方式,它甚至不会有一瞬间出现黑色弹出窗口。请注意可执行文件路径后面前面的额外“”。仅当环境变量包含空格时才需要这些。
| 归档时间: |
|
| 查看次数: |
7692 次 |
| 最近记录: |