繁体   English   中英

从CMD检测命令行应用程序而不会弄乱PATH变量或System32 / SysWow64目录

[英]Detect commandline application from CMD without messing with PATH variable or System32/SysWow64 dir

脚本

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

这可能吗? 也许触摸所需的注册表项?

注意:我知道如何将我的应用程序添加到PATH变量/ regvalue或如何从CMD访问我的应用程序,将所需的.exe放在System32 / SysWow64文件夹中。 这个问题只是为了学习替代方案,而不是解决PATHSystem dirs的问题。

我已经试过这表明从@Sertac Akyuz的评论的做法在这个答案 ,我已存储MyApp.exeC:\\根目录下,但我不能检测只是把应用程序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"

App Paths注册表设置 - 由Windows资源管理器用于在“运行...”框中键入程序名称时查找程序,依此类推。 这些设置不会影响cmd.exe行为。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM