Windows 从CMD检测命令行应用程序,而不影响路径变量或System32/SysWow64 dir 脚本

Windows 从CMD检测命令行应用程序,而不影响路径变量或System32/SysWow64 dir 脚本,windows,windows-8,cmd,registry,windows-shell,Windows,Windows 8,Cmd,Registry,Windows Shell,我想在C:\Windows\System32或C:\Windows\Syswow64之外的文件夹中安装x86命令行应用程序,并且仍然能够在CMD下访问我的应用程序,而无需在path环境变量中添加我的应用程序路径 问题: 这可能吗?也许触摸一个需要的注册表项 注意:我知道如何将我的应用程序添加到PATHvariable/regvalue中,或者如何从CMD将所需的.exe放入System32/SysWow64文件夹中访问我的应用程序。这个问题只是为了学习备选方案,而不是解决路径或系统目录的问题 代

我想在
C:\Windows\System32
C:\Windows\Syswow64
之外的文件夹中安装x86命令行应用程序,并且仍然能够在CMD下访问我的应用程序,而无需在
path
环境变量中添加我的应用程序路径

问题: 这可能吗?也许触摸一个需要的注册表项

注意:我知道如何将我的应用程序添加到
PATH
variable/regvalue中,或者如何从CMD将所需的.exe放入
System32
/
SysWow64
文件夹中访问我的应用程序。这个问题只是为了学习备选方案,而不是解决
路径
系统目录的问题

代码 我从@Sertac Akyuz的评论中尝试了这种建议的方法,我已经将
MyApp.exe
存储在
C:\
根目录下,但我无法检测到应用程序只是将
MyApp.exe
放在CMD下

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"

应用程序路径
注册表设置-由Windows资源管理器使用,用于在“运行…”框中键入程序名时定位程序,依此类推。这些设置不会影响
cmd.exe
行为


为搜索应用程序设置
cmd.exe
路径的唯一方法是更改
PATH
环境变量。您可以从自己的
.bat
/
.cmd
启动
cmd.exe
,在这里设置当前会话所需的所有变量,而无需全局更改。

应用程序路径不适用于命令提示。但你可以用应用程序路径注册表作弊。您可以为
cmd.exe
本身创建一个条目,并在其中创建
路径
键值和应用程序的路径。然后,将此键值的路径附加到应用程序的环境变量(在本例中为命令提示符)。仅供参考:cmd.exe不使用App Path,但其他shell使用App Path,例如tcc.exe:如果要从命令行运行包含在
App Path
中的应用程序,您需要使用
启动MyApp
。我发现这个问题有点奇怪,因为我不明白您想要解决的确切问题。您只希望命令可以从任何CMD提示符运行,但不改变路径?有很多方法。第一个:提供可执行文件的完整路径。若你们不想改变方向,你们还期望什么?也许可以检查一下是否可以使用别名(类似于Linux/Unix)。或者快捷方式、脚本。。。