双击批处理文件 Windows 找不到文件

双击批处理文件 Windows 找不到文件

我发现这个问题的变体在各处被问到,并且我尝试了所有我在那里找到的实际答案(包括更改关联的注册表)。基本问题是这样的:

  1. 我在桌面上或计算机中的任何文件夹中创建了一个批处理文件(具有回声和暂停的简单批处理)。
  2. 我双击批处理文件来运行它并得到:

在此处输入图片描述

解决方法包括:

  1. 右键单击并以管理员身份运行
  2. 打开命令提示符并按名称调用批处理文件

一段时间以来,我一直使用这些变通方法来处理这个问题,但我开始认为我无法让某些程序正常工作(例如,Android Studio 中的 android.bat 无法运行,因为文件未找到,尽管它在那里),这与这个问题有关。如果我下周不能解决这个问题,我可能会重新格式化。

附加信息:

  1. 这是 Windows 8.1 Pro 64 位
  2. 没有其他文件类型存在此双击执行问题
  3. 如果我使用解决方法从另一个批处理文件调用一个批处理文件,它就可以工作
  4. 无论我在哪个文件夹中,都会发生这种情况,并且不会在使用相同 Windows 副本的 Hyper-V 虚拟机上发生这种情况
  5. 所有 Windows 更新都已运行,我也已进行病毒扫描等 - 唯一同时出错的另一件事是机器似乎有点慢了(特别是当我尝试在任何程序中打开文件对话框时 - 现在需要大约 5 秒钟才能打开,而不是立即打开)。

任何想法都将不胜感激!也许是时候重新格式化了(已经一年左右了)。

编辑:不知道 SuperUser。看来这个问题在那里更合适!

编辑 2:这里有人有想法吗?

答案1

检查您的系统环境 COMSPEC。它应该是类似于 %SystemRoot%\system32\cmd.exe 的内容。如果它因某种原因被更改,bat 文件将无法通过双击运行。

答案2

您正在“特权空间”中运行批处理文件。Microsoft 已意识到这一事实,您需要相应地解决此问题。

大多数病毒和恶意软件都会利用 OS Drive 的根目录。

您需要做的是创建一个文件夹并将批处理文件移到其中。

测试目录:

另外,在“服务器世界”中,将应用程序安装/运行在与操作系统相同的驱动器上实际上被认为是一种不好的做法。消费类笔记本电脑/台式机没问题,但在服务器领域,这是一种不好的做法。例如,如果您的 Web 服务器或数据库要运行错误的进程,并且日志空间要填满驱动器,那么它实际上可能会杀死操作系统。

这只是我的几点想法。

谢谢。

答案3

我从另一台电脑复制了“cmd.exe”文件并将其粘贴到 windows/system32/ 文件夹中。这解决了我的问题。

相关内容