从 Console2 或 Powershell 看不到某些程序

从 Console2 或 Powershell 看不到某些程序

我用控制台2运行各种 shell(git bash、powershell、cmd)。但是,当我运行 Console2 或 Powershell 时,有些程序无法访问,而通过普通的 cmd 提示符可以访问。为什么会这样?我该如何修复?

例如,在其他 shellbcdedit中甚至看不到该程序C:\Windows\System32\(但在 cmd 和 Windows 资源管理器中显示正常,并且位于 cmd 中的 PATH [即可从任何目录运行] 上)。

我还安装了海拔 PowerToys在我的计算机上,但是,该elevate命令再次只能在 cmd 中起作用。

答案1

我无法在我的系统上复制此问题(win7 64 位,console2 beta 版本 2.00.147),但这听起来像是我曾经使用 32 位应用程序启动 32 位 cmd.exe 并迷失在 WOW64 的 system32 文件夹(%systemroot%\SysWOW64)中遇到的一些疯狂情况。

如果您运行的是 64 位版本的 Windows,我建议您检查任务管理器以确认 console.exe 和 cmd.exe 是 32 位还是 64 位。

我当时能够通过创建指向 64 位系统文件夹的符号链接并在我的 32 位进程中从那里明确启动 cmd.exe 来解决此问题。

cd \windows
mklink /d sysnative system32

然后让我的 32 位应用程序启动 \windows\sysnative\cmd.exe

这是一个非常笨重的解决方法,但如果您遇到同样的问题,它可能会对您有所帮助。

相关内容