让bat文件后台运行,dos命令后台运行

时间:2022-09-29 23:55:39

  经常遇到某些程序在windows系统下,需要dos命令才可以运行,但是一直启动显示CMD.EXE窗口也不太好看,所以希望能将DOS窗口隐藏在后台运行。解决方法:将dos命令写成bat批处理文件,然后进行以下操作。

  bat文件运行时会有一个黑黑的cmd.exe窗口,很吓人,就算用start/min命令去运行bat文件,电脑的任务栏下仍然会有相关的图标,怎么让bat文件在后台无声无息无影无形地运行呢?以下的办法可以达到你的目的。

方法一

  bat里有隐藏窗口的命令,很简单,只需要在代码头部加一段代码就可以了。

  @echo off   
  if "%1" == "h" goto begin 
      mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit 
  :begin 
  ::下面是你自己的代码。

方法二

  在你批处理的相同目录下新建一个记事本,里面输入:

  DIM objShell set objShell=wscript.createObject("wscript.shell") 
  iReturn=objShell.Run("cmd.exe /C c:\1.bat", 0, TRUE)   
  ::(其中win.bat为你自己的批处理名字,自己改)
  :: 然后把这个记事本保存为后缀名为.vbe的文件,到时候你只要运行这个vbe文件就达到目的了!
  :: 可以写的简单点: 
  Set ws = CreateObject("Wscript.Shell") 
  ws.run "cmd /c c:\1.bat",0 
  :: 或者 
  CreateObject("WScript.Shell").Run "cmd /c c:\1.bat",0 
  :: (这种写法很多杀软报毒, 需要替换参数0

 
  最后那个0是指窗口参数,用法为:
  0 隐藏窗口并激活另一窗口。
  1 激活并显示一个窗口。若窗口是最小化或最大化,则恢复到其原来的大小和位置。
  2 激活窗口并以最小化显示该窗口。
  3 激活窗口并以最大化显示该窗口。
  4 按窗口最近的大小和位置显示。活动窗口保持活动。
  5 以当前大小和位置激活并显示窗口。
  6 最小化指定窗口并激活按 Z 序排序的下一个顶层窗口。
  7 最小化显示窗口。活动窗口保持活动。
  8 以当前状态显示窗口。活动窗口保持活动。
  9 激活并显示窗口。若窗口是最小化或最大化,则恢复到原来的大小和位置。在还原应用程序的最小化窗口时,应指定该标志。

以上,我试过第一种,可用;第二种感觉有点麻烦,没有使用,还不知道其效果,暂记录于此!

原文:http://blog.csdn.net/carl6148/article/details/7905549