C# - 运行 来自全局命令行的控制台应用程序

C# - Run a console application from command line globally

如何在命令行上 运行 控制台应用程序而无需指定应用程序的路径?

例如,dtexec.exe只需在命令行输入dtexec.exe即可调用。如何部署我的应用程序而不指定路径?

目前我的控制台应用程序 运行 正常(没有错误),唯一的问题是需要在不指定可执行文件路径的情况下部署和调用它。

这可能吗?

您可以将其添加到 'Environment Variables' 中的 'path'。好像是win7,你可以在控制面板里搜索一下。

一些背景:

如果您在控制台 window 中输入 命令shell 会尝试找出什么这个命令的意思。它

  1. 检查内部命令
  2. 在当前工作目录中搜索具有此名称的 .exe 或 .cmd(以及更多)
  3. 它使用当前的%PATH%环境变量,从这个字符串开始依次检查每个目录。

因此,如果您想从应用程序(没有路径)调用这样的命令,您必须执行与 shell 相同的步骤。

编辑

在 windows 上 shell 是 c:\windows\system32\cmd.exe。您可以使用您的命令作为参数调用 cmd.exe,而不是模仿 shell 的行为,并让它完成所有工作。