【问题标题】:Bat file to run a .exe at the command prompt在命令提示符下运行 .exe 的 Bat 文件
【发布时间】:2020-07-01 14:54:14
【问题描述】:

我想创建一个 .bat 文件,这样我只需单击它就可以运行:

svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config http://localhost:8000/ServiceModelSamples/service

有人可以帮我看看 .bat 文件的结构吗?

【问题讨论】:

标签: windows batch-file exe


【解决方案1】:

启动一个程序然后关闭命令提示符而不等待程序退出:

start /d "path" file.exe

【讨论】:

  • @MehdiJ:设置主目录。
  • 可以从网络浏览器运行 bat 文件吗?像一个javascript来调用bat文件??
  • @Karthi:抱歉,这不可能
  • @Karthi 出于安全原因,您不希望 javascript 能够运行 bat 文件。
  • 如何等待程序退出?
【解决方案2】:

你可以使用:

start "windowTitle" fullPath/file.exe

注意:第一组引号必须在那里,但您不必在其中添加任何内容,例如:

start "" fullPath/file.exe

【讨论】:

  • “第一组引号”只是窗口标题,不是必需的。但是,最好使用 /d start /d "fullpath" file.exe 指定启动目录,这样可以确保任何依赖文件,例如找到并加载一个 DLL。
【解决方案3】:

这是执行记事本的非常简单的代码 在记事本中输入以下代码并保存到扩展名 .bat 示例:notepad.bat

start "c:\windows\system32" notepad.exe   

(上面的代码“c:\windows\system32”是你保存.exe程序的路径,notepad.exe是你的.exe程序文件)

享受吧!

【讨论】:

    【解决方案4】:

    只要把那一行放到bat文件里...

    您甚至可以为 svcutil.exe 创建一个快捷方式,然后在“目标”窗口中添加参数。

    【讨论】:

      【解决方案5】:

      bat 文件没有结构...这是您在命令行上键入它的方式。所以只要打开你最喜欢的编辑器..复制你要运行的代码行..并将文件保存为whatever.bat或whatever.cmd

      【讨论】:

        【解决方案6】:

        只需插入一个文件并将其命名为“ServiceModelSamples.bat”或其他名称。

        您可以在第一行添加“@echo off”,这样命令就不会打印到屏幕上:

        @echo off
        svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config http://localhost:8000/ServiceModelSamples/service
        

        【讨论】:

        • 而不是添加@echo off 作为第一行,您可以简单地在您不想被回显的行首添加@...
        【解决方案7】:

        如果你想真正聪明,在命令行输入:

        echo svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config http://localhost:8000/ServiceModelSamples/service >CreateService.cmd
        

        然后你就有了CreateService.cmd,你可以随时运行(.cmd 只是.bat 文件的另一个扩展名)

        【讨论】:

          【解决方案8】:

          是什么阻止了你?

          将此命令放在一个文本文件中,使用 .bat(或 .cmd)扩展名保存并双击它...

          假设命令在您的系统上执行,我想就是这样。

          【讨论】:

            【解决方案9】:

            here 所述,关于Start 命令,以下将使用您指定的参数启动您的应用程序:

            start "svcutil" "svcutil.exe" "language:cs" "out:generatedProxy.cs" "config:app.config" "http://localhost:8000/ServiceModelSamples/service"
            
            • "svcutil",在start 命令之后,是在运行指定的应用程序时赋予 CMD 窗口的名称。这是start 命令的必需参数。

            • "svcutil.exe" 是您要运行的应用程序的绝对或相对路径。使用引号可以让您在路径中有空格。

            • 指定要启动的应用程序后,以下所有参数都被解释为发送给应用程序的参数。

            【讨论】:

              【解决方案10】:

              如果您的文件夹设置为“隐藏文件扩展名”,您将文件命名为 *.bat 或 *.cmd,它仍然是一个文本文件(隐藏的 .txt 扩展名)。确保您可以正确命名文件!

              【讨论】:

                【解决方案11】:

                好吧,这里似乎很重要的一点是,默认情况下 svcutil 在命令行中不可用,您可以从 vs xommand 行快捷方式运行它,但是如果您通常创建一个批处理文件,除非您运行 vcvarsall,否则它将无济于事。脚本之前的 bat 文件。 下面是一个示例

                “C:\Program Files\Microsoft Visual Studio *version*\VC\vcvarsall.bat” svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config http://localhost:8000/ServiceModelSamples/service

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2016-10-19
                  • 1970-01-01
                  • 2016-02-17
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  相关资源
                  最近更新 更多