场景
我想在 C:\Windows\System32
或 C:\Windows\Syswow64
之外的文件夹中安装 x86 CommandLine 应用程序并且仍然能够在 CMD 下访问我的应用程序,而无需在 PATH
环境变量中添加我的应用程序路径。
问题
这可能吗?也许触摸所需的注册表项?
注意:我知道如何将我的应用程序添加到 PATH
变量/regvalue 或如何从 CMD 访问我的应用程序,将所需的 .exe 放入 System32
/SysWow64
文件夹。这个问题只是为了学习替代方案,而不是解决 PATH
或 System 目录的问题。
代码
我已经从@Sertac Akyuz 在 this answer 的评论中尝试了这个建议的方法,我把MyApp.exe
存放在C:\
根目录下,但是我检测不到只是把MyApp.exe
放在命令。
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\App Paths\MyApp.exe]
@="C:\\MyApp.exe"
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Paths\MyApp.exe]
@="C:\\MyApp.exe"
[HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\App Paths\MyApp.exe]
@="C:\\MyApp.exe"
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths\MyApp.exe]
@="C:\\MyApp.exe"
最佳答案
App Paths
注册表设置 - 由 Windows Explorer 使用,当您在“运行...”框中键入程序名称时定位程序,等等。这些设置不会影响 cmd.exe
行为。
设置 cmd.exe
路径以搜索应用程序的唯一方法是更改 PATH
环境变量。您可以从您自己的 .bat
/.cmd
启动 cmd.exe
,您可以在其中为当前 session 设置所有必需的变量,而无需全局更改它.
关于windows - 从 CMD 检测命令行应用程序,而不会弄乱 PATH 变量或 System32/SysWow64 目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27179818/