以管理员身份运行批处理文件命令错误.exe'未被识别为内部或外部命令

2024-02-28

以管理员身份运行时出错:

BackGroundJob.exe' 不被识别为内部或外部命令、可操作程序或批处理文件。

exe和bat文件都在同一个文件夹中。

当我运行它而不以管理员身份运行时它会运行。但要安装此 .exe,我需要从同一文件夹以管理员身份安装它。

ECHO OFF
CLS
:MENU
ECHO.
ECHO ...............................................
ECHO PRESS 1, 2 to select your task, or 3 to EXIT.
ECHO ...............................................
ECHO.
ECHO 1 - Install BackGroundJob
ECHO 2 - UnInstall BackGroundJob
ECHO 3 - EXIT

ECHO.
SET /P M=Type 1, 2, or 3 then press ENTER:
IF %M%==1 GOTO INSTALL
IF %M%==2 GOTO UNINSTALL
IF %M%==3 GOTO EOF
:INSTALL
CD %cd%
BackGroundJob.exe install
GOTO MENU
:UNINSTALL
CD %cd%
BackGroundJob.exe uninstall
GOTO MENU

给出的信息不多,因此您可以尝试一下。


实际文件位置

看起来backgroundJob.exe不在:

  • 中的任何文件夹path环境变量
  • 批处理脚本所在的文件夹

使用外部工具时,最好检查该工具是否存在并且可以访问。

如何确保文件存在

  • Use IF EXIST filename.ext

    • 这可以检查文件是否存在,进一步防止此类错误。
  • 或者,使用for and where知道文件在哪里

    • 循环遍历目录并检索文件路径。

当前目录

CD %cd%不是必需的,因为它只是将目录更改为当前目录。这行代码仅在以下情况下才会使用%cd%之前已经编辑过,不推荐。

用户 eryksun 提到,也许您的当前目录没有设置为批处理文件的目录。考虑添加cd /d %~dp0. cd更改目录,/d实现驱动器更换,并且%~dp0代表当前批处理脚本的驱动器和路径。


代码插入漏洞

IF %M%==1

非常不安全,因为输入几乎可以是任何内容,从字母数字字符到特殊字符。如果%M%等于一个空格,会发生这种情况:

IF   ==1

命令处理器不理解这一点。

另外,如果输入是

1==1 format D:\ &&

这将格式化您的 D 驱动器。


退出脚本

GOTO EOF应该GOTO :EOF, as :EOF是一个预定义的标签,只能由GOTO :EOF。否则,cmd 将跳转到未定义的 EOF 标签,从而导致错误。

While GOTO :EOF有效,我建议使用内部exit命令。

EXIT退出当前命令控制台。如果您想退出子例程或附加脚本而不关闭控制台,您应该尝试exit /b反而。


隐藏@echo off的命令输出

您可以考虑使用@echo off代替echo off,因为 at 符号充当内联@echo off.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以管理员身份运行批处理文件命令错误.exe'未被识别为内部或外部命令 的相关文章

  • 从android执行.bat文件

    我正在尝试执行 xxx bat 文件以从我的 Android 应用程序重命名该文件 听到的是我的代码 Runtime getRuntime exec Environment getExternalStorageDirectory File
  • 在文件夹的上下文菜单中运行批处理文件

    当我右键单击任何文件夹时 我想运行此批处理文件 setenv cmd echo off SET CPLUS INCLUDE PATH C mingw32 include C mingw32 lib gcc mingw32 4 9 2 inc
  • 批处理文件随机删除文本文件的一半行?

    我需要一种方法来使用批处理来查看文本文件的每一行 并删除该文本文件中的一半行 随机选择要删除的行 这是为了模拟 D D 游戏中的锦标赛 我所需要的只是一种方法来淘汰每轮比赛的获胜者 我可以轻松地制作一个批处理文件 复制文本文件并为每一轮重命
  • 阻止 gulp 更改 shell/cmd 标题名称

    当 gulp 被调用时 它会将我的 cmd windows 标题更改为 gulp 我希望窗口名称保持原样 我知道我可以使用https www npmjs com package gulp shell https www npmjs com
  • 根据文件内容重命名文件批处理文件

    我需要一个批处理文件来读取 XYZ txt 文件中存在的描述名称 并根据描述名称重命名该文件名 例如 我有一个名为 nest txt 的文件名 当我们打开文本文件 nest txt 时 文件名的第二行有说明 Description Man
  • windows bat 文件中的 bang 字符是什么意思?

    我正在尝试更正一个使用 bang 字符的 bat 文件 我本来期望某种形式的引用 就像是 set some var some var 然后后来 some command some var 看起来第一个是在禁用回显的情况下提示输入 例如提示输
  • 批处理文件中的 %* 是什么意思?

    我见过的用法 在批处理文件和命令行中 有人可以解释一下的典型用法吗 有一个例子吗 它的意思是 命令行中的所有参数 例如 当您想要将命令行从批处理文件转发到另一个程序时 它非常有用 REM mybatchfile cmd echo You c
  • 以管理员身份从 cmd 批处理运行 PowerShell 脚本

    我有一个 PowerShell 设置 我想在执行策略可能受到限制并且需要管理员权限的计算机上执行 理想情况下 我可以将其包装在 cmd 批处理中 如下所示 powershell Command Start Process powershel
  • Windows 批处理文件中的 SQL 语句

    有没有办法让Windows批处理文件直接输入SQL语句而不需要调用脚本 我希望批处理文件登录SQL 然后直接输入语句 EDIT 我正在使用 Oracle v10g 对于单个命令 您可以使用以下技巧 echo select from dual
  • 批处理:在特定程序中打开特定文件?

    当记事本是 txt 文件的默认程序时 如何告诉 Windows 在写字板中打开 C test test txt 接受的答案对我不起作用 我不确定这是因为我试图运行的程序 还是因为路径中有空格 即使我用引号引起来 或者其他原因 不管怎样 我可
  • 如何使用 Windows forfiles 命令的完整路径运行命令?

    我正在尝试运行以下命令 forfiles p Schemas m xsd c cmd c C Program Files x86 Microsoft SDKs Windows v10 0A bin NETFX 4 6 1 Tools xsd
  • 需要帮助通过批处理文件添加注册表项

    我正在尝试通过cmd添加以下注册表项 我无法让其他用户能够使用以下命令添加此注册表项regedit exe s Location Project reg HKEY CURRENT USER Software Autodesk Fabrica
  • 回显 unicode 字符

    我想通过运行bat 文件在cmd 中回显unicode 字符 我准备了一个简短的脚本 echo off SET message G p3 echo message pause 我怎样才能做到这一点 是否可以直接将这封信放入代码中 这样做 两
  • 使用cmd批处理文件获取pdf中的页数

    我可以看到使用 C PHP 和其他语言获取 pdf 中的页数有很多问题 但我想知道使用批处理文件或 cmd 是否有一种简单的方法来获取页数 Using pdftk http www accesspdf com pdftk pdftk my
  • 使用变量更改批处理文件中的目录

    这是问题 set Pathname C Program Files cd Pathname pause 正如我所期望的 上面的内容不会更改目录 有人可以告诉我为什么吗 The set语句不会按照您期望的方式处理空格 你的变量确实被命名了Pa
  • VBscript 以提升的权限运行 bat 文件

    这是我的bat文件 REG DELETE HKLM Software Microsoft Windows CurrentVersion WindowsUpdate v SusClientId f REG DELETE HKLM Softwa
  • 如何从 HTA 中启动批处理文件

    我有一个基本的 HTA 其中我尝试通过按钮启动批处理文件 但是当我尝试启动批处理文件时 它不会运行 当我按下按钮时 将启动命令提示符窗口 但不会运行脚本 这是代码的简单示例
  • 批处理文件删除目录中除指定列表之外的所有文件夹

    我正在寻找一个批处理文件 该文件将进入 C Documents and Settings 并删除除我想保留的几个文件夹之外的所有文件夹 这是一个破解方法 D 如果您在folders txt 中有一个文件夹路径列表 如下所示 C Docume
  • 批处理脚本 FOR 循环仅设置输出的第一个字母 wsl --list -q

    我正在编写一个批处理脚本 将文件从 Windows 目录复制到 WSL 发行版 其中一部分是选择将文件复制到哪个发行版 如果我使用命令wsl list q如果给我以下输出 Ubuntu 22 04 Ubuntu 18 04 我正在尝试使用此
  • 批处理脚本生成特定年月、周和工作日的文件夹

    最近几天我一直在寻找这个问题的答案 有很多关于全年批量文件夹创建的答案 但不够具体 所以我非常感谢答案 所以我想要这样的文件夹结构 如下所示 2017 for example main folder for year 2017 01 JAN

随机推荐

  • 如何将 SQlite 中的数据显示到 iPhone 应用程序的表视图中

    我正在 Xcode 4 3 中使用 SQlite3 开发 iPhone 项目 SQlite 和 Xcode 之间的连接已完成 现在我想将我的数据显示到表视图 三个视图 中 并且它是只读的 所以我有主表视图 选择原始 gt 进入第二个视图并从
  • 使用 Vagrant 管理开发和生产环境?

    人们如何使用 vagrant 最好来自同一个 vagrantfile 处理开发 生产环境的简单自动化 使用 puppet 我试图解决的用例 如果没有创建的话 我很乐意用 vagrant 来启动生产机器 如果在我的开发环境的 puppet 文
  • 直到阈值为止的数字列表的总和

    我有一个整数列表 我想要对其进行求和 直到满足阈值 然后能够访问达到阈值的索引 就像是 summing lt function i sum sum list i index i while sum lt thresholdValue sum
  • HTML5 视频 - 设置 video.currentTime 会破坏播放器

    我正在尝试与 Chrome 中的第三方 html5 视频播放器进行交互 我能够因此获得对它的有效引用 document getElementsByTagName video 1 以及readyState是 4 所以一切都很好 我可以成功 并
  • Gradle - 排除配置的依赖关系,但不排除继承配置的依赖关系

    使用 Gradle 1 0 里程碑 8 我的项目使用 slf4j Logback 进行日志记录 因此我想防止 log4j 上的任何传递依赖项污染我的类路径 因此 我添加了全局排除 如下所示 configurations all exclud
  • 定义自定义颜色变量

    我想在我的代码中全局更改一些按钮颜色 我似乎无法找到一种定义颜色变量然后为该变量分配颜色值的方法 我试过这个 颜色 SelectedColor new Color f1 setBackgroundColor Color rgb 0 0 10
  • C# 以编程方式执行 TNSPing

    是否可以以编程方式在 Oracle 数据库上执行 TNSPing 我知道我可能可以调用 TNSPing 程序并解析生成的任何输出 但我正在寻找一种更强大的方法来处理数据库 TNS Ping 看过了平级 http msdn microsoft
  • 为什么 String 的 format(Object...args) 定义为静态方法?

    我想知道为什么Java5 及以上版本提供了使用 String 类中的静态方法的 printf 样式格式化程序 如下所示 public static String format String format Object args 代替 pub
  • 如何在 ASP.Net 应用程序上使用 salting+hashing?

    我正在从头开始构建一个项目 并且我想以正确的方式做事 我在网上读过有关哈希的内容 这基本上就是将密码转换为 64 个字母的繁文缛节 对吗 腌制怎么样 我的问题是 如何使用 C 对字符串进行哈希处理 MSSQL 中的字段声明类型是什么 nva
  • MVC HTML5 电子邮件标签

    我有一个模型 Required ErrorMessage Email required DataType DataType EmailAddress ErrorMessage Please enter valid email address
  • PowerPoint VBA 中的睡眠/等待计时器不是 CPU 密集型的

    我目前正在制作一个 PowerPoint 演示文稿 该演示文稿在计算机上用作某种信息亭或信息屏幕 它从磁盘上的文本文件中读取文本 该文本文件中的文本显示在 PowerPoint 的文本框中 并且每 5 秒刷新一次 这样我们就可以编辑 Pow
  • 从查询引用子表单

    在 MS Access 2010 中 我有一个查询 它在条件中引用了以下内容 Forms frm Add Item Subform ActiveControl Caption 这使我可以在查询中使用按钮的 标题 文本 以下代码位于 Butt
  • 将触摸和手势转发到 UIScrollview 的视图

    我在转发手势和触摸时遇到一些问题 我玩了很多次 但我无法让它按照我想要的方式工作 基本上我想用 2 个手指控制双屏幕上的滚动视图 并将其他所有内容转发到重叠滚动视图后面的 ipad 视图 为了能够控制双屏上的滚动视图 我进行了子类化UISc
  • 如何将包含 7 位毫秒数的日期字符串转换为 Python 中的日期

    当毫秒有 6 位数字时 f 有效 但如果超过 6 位数字 则会抛出错误 我有一个临时解决方案 将第 7 位硬编码为 0 但是有更好的方法吗 目前以下作品 print datetime datetime strptime 2014 11 19
  • ActiveAdmin - 如何在自定义操作中呈现默认模板

    我们在 Rails3 应用程序中使用 ActiveAdmin 作为默认模型 现在我们需要覆盖显示操作 OrderProcess 模型是瞬态 无表 模型 这意味着所有字段都是从其他数据聚合而来的 我们使用一个内部模块 它提供了必要的方法来模拟
  • 如何以缓存友好的方式访问灵活数组的数组?

    I have records具有灵活的阵列成员 typedef struct record unsigned foo signed bar double number record 我有多个records与相同数量的numbers这样我就可
  • SignalR:加载集线器时出错

    Signalr 不加载我的集线器 SignalR Error loading hubs Ensure your hubs reference is correct e g 我正在打电话app MapSignalR in startup co
  • 未捕获的ReferenceError:未定义FileTransfer(使用cordova 2.7.0)

    我想使用FileTransfer从网络服务器下载文件 代码如下 function downloadFile url var fileTransfer new FileTransfer var uri encodeURI url var fi
  • 异步填充DataTable?

    我在 NET Core 2 0 应用程序中有以下功能 public DataTable CallDb string connStr string sql var dt new DataTable var da new SqlDataAdap
  • 以管理员身份运行批处理文件命令错误.exe'未被识别为内部或外部命令

    以管理员身份运行时出错 BackGroundJob exe 不被识别为内部或外部命令 可操作程序或批处理文件 exe和bat文件都在同一个文件夹中 当我运行它而不以管理员身份运行时它会运行 但要安装此 exe 我需要从同一文件夹以管理员身份