代码之家  ›  专栏  ›  技术社区  ›  viniciussss

禁用CMD start命令中的弹出消息

  •  0
  • viniciussss  · 技术社区  · 6 年前

    我想创建一个Windows BAT或VBS,尝试以静默方式启动程序。如果程序不存在,我希望它以静默方式终止,而不显示任何警报窗口。

    我正在尝试以下名为 startSilently.bat :

    @echo off
    start %1
    

    当我键入时 startSilently.bat chrome 在CMD中,Google Chrome按其应有的方式打开。

    但是当我打字的时候 startSilently.bat nonexistent ,然后我会收到一条弹出消息,告诉我:

    Windows找不到“不存在”。确保键入了名称 正确,然后重试。

    enter image description here

    我希望这条消息没有出现。有没有办法做到这一点?

    注意:我不能使用 call 而不是 start 因为我不知道程序安装在哪里。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Regis Desrosiers    6 年前

    这可以在一个小时内完成。vbs方式:

    On Error Resume Next
    WScript.CreateObject("WSCript.shell").run WScript.Arguments.Unnamed(0) 
    

    然后你这样称呼它:

    cscript scriptname.vbs appname
    

    如果在您的 静默启动 如果希望应用程序的启动最小化,可以添加 IntWindowsStyle 值为7的参数如下:

    On Error Resume Next
    WScript.CreateObject("WSCript.shell").run WScript.Arguments.Unnamed(0),7
    

    。。。但这可能不适用于所有应用程序。例如,记事本将启动最小化,但不会启动chrome。