運行bat時隱藏cmd窗口


運行bat時隱藏cmd窗口,開機啟動bat以及隱藏運行窗口

bat隱藏窗口運行

cmd隱藏窗口運行

 

另一個方法:

隱藏運行軟件,cmd隱藏運行,bat隱藏運行,命令窗口隱藏運行

 

讓bat隱藏運行需要用vbs文件才能實現,
方法一:新建一個文本文檔,寫入
set ws=WScript.CreateObject("WScript.Shell")
ws.Run "d:\yy.bat",0
另存為vbs文件即可,其中d:\yy.bat是你需要運行的bat文件的路徑。

方法二:用文本文檔打開bat文件,在開頭處寫入
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REM
這個方法運行bat,還是閃了一下。

 

1.在windows命令行后台運行某個命令:

在執行的命令前加上start /b,比如start /b run.bat。就相當於Linux下的run.sh &

2.開機啟動bat
  新建test.bat, 文件內容如下:

  set ws=WScript.CreateObject("WScript.Shell") 
  ws.Run "D:\test.bat /start",0

  保存,然后放到Windows啟動目錄下,就可以了。

3.隱藏運行窗口
  bat運行后一般會有一個黑色的命令窗口,那么如何隱藏呢?有兩種方式:

   方法一:新建一個vbs文件,如hello.vbs,文件內容如下:

   Set ws = CreateObject("Wscript.Shell") 
   ws.run "cmd /c D:\CI_Slave\slave.bat",vbhide 

  保存,然后放到Windows啟動目錄下,就可以了。

 方法二:用文本文檔打開bat文件,在開頭處寫入

 @echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REM

保存,然后放到Windows啟動目錄下,就可以了。

這個方法運行bat,還是會閃一下。

PS:Windows啟動目錄:

  WinXP: C:/Documents and Settings/Administrator/「開始」菜單/程序/啟動

  Win7:   C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

 Win10:C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

 所有用戶通用啟動目錄:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

 

出處:https://www.zhuguodong.com/?id=432

=======================================================================================

Bat批處理文件怎么隱藏運行?隱藏運行Bat文件的幾個方法

BAT文件是批處理文件,在Windows系統下以命令行的方式執行一條或多條命令。在命令提示下鍵入批處理文件的名稱,或者雙擊該批處理文件,系統就會調用cmd.exe按照該文件中各個命令出現的順序來逐個運行它們。使用批處理文件(也被稱為批處理程序或腳本),可以簡化日常或重復性任務。是很多系統愛好者喜歡使用的命令!能實現的功能有很多。



然而Bat文件在運行時都會出現黑色的命令提示符窗口,讓某些時候感覺不爽,如何才能隱藏運行Bat文件?下面小編介紹幾種方法。


一、通過批處理命令實現。缺點:會看到一個窗口一閃而逝。優點:簡單,直接添加即可。

@echo off
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
::以下為正常批處理命令,不可含有pause set/p等交互命令
pause

 

二、利用vbs腳本實現隱藏。缺點:調用麻煩點。優點:基本看不到痕跡(非絕對的,指一般用戶)

HideRun.vbs

CreateObject("WScript.Shell").Run "cmd /c D:/test.bat",0
其中D:/test.bat是你的批處理路徑
 

 

三、另一思路為把bat轉換成vbs,然后vbs生成一個臨時bat文件,然后WScript.Shell.Run隱藏啟動這個臨時bat。


HideRun.bat

echo CreateObject("WScript.Shell").Run "cmd /c D:/test.bat",0>$tmp.vbs
cscript.exe /e:vbscript $tmp.vbs
del $tmp.vbs
這個批處理其實不能使其批處理本身隱藏,但是下面大部分隱藏調用批處理的原理和基礎。


HideRun.js

new ActiveXObject('WScript.Shell').Run('cmd /c D:/Test.bat',0);
用Javascript有什么好處呢?js的字符串變量可以用單引號,從而方便命令行作為參數調用,而且js很好的支持多行語句用 ; 分隔寫成一行。要注意的是:js要區分大小寫,方法

必須用括號,結尾必須有分號。所以就成了下面的命令:

mshta "javascript:new ActiveXObject('WScript.Shell').Run('cmd /c D:/test.bat',0);window.close()"

 

 通常系統管理員會向用戶端推送一些腳本並運行,或者拷貝批處理文件到客戶端由用戶自己運行。但是大部分腳本在運行時會彈出黑色背景的DOS窗口,這會讓不少用戶不知所

措,甚至誤操作關閉正在運行的窗口。好在批處理文件的DOS窗口是可以隱藏的,以下是幾種隱藏批處理運行窗口的方法。


1.基礎

HideRun.vbs

CreateObject("WScript.Shell").Run "cmd /c D:/test.bat",0 www.xitonghe.com
其中D:/test.bat是你的批處理路徑

另一思路為把bat轉換成vbs,然后vbs生成一個臨時bat文件,然后WScript.Shell.Run隱藏啟動這個臨時bat。


HideRun.bat

echo CreateObject("WScript.Shell").Run "cmd /c D:/test.bat",0>$tmp.vbs
cscript.exe /e:vbscript $tmp.vbs
del $tmp.vbs
這個批處理其實不能使其批處理本身隱藏,但是下面大部分隱藏調用批處理的原理和基礎。


HideRun.js

new ActiveXObject('WScript.Shell').Run('cmd /c D:/Test.bat',0);
用Javascript有什么好處呢?js的字符串變量可以用單引號,從而方便命令行作為參數調用,而且js很好的支持多行語句用 ; 分隔寫成一行。要注意的是:js要區分大小寫,方法

必須用括號,結尾必須有分號。所以就成了下面的命令:

mshta "javascript:new ActiveXObject('WScript.Shell').Run('cmd /c D:/test.bat',0);window.close()"

 

2.用快捷方式

如果要使一個批處理本身隱藏,可以參考附件里的一個快捷方式,修改附件中的相關路徑即可隱藏啟動你的批處理。可以用vbs來建立一個 .lnk,其實用批處理也行(先echo一個

vbs出來)

 

3.利用系統服務

可以建立一個系統服務然后啟動這個服務來啟動批處理。缺點是啟動服務較慢,需要管理員權限

runassrv add /cmdline:"C:/Windows/System32/cmd.exe /c D:/test.bat" /name:"mysrv"
net start mysrv

 

4.利用at計划任務

用at可以建立一個計划任務,在不輸入 /interactive 參數可以后台運行。但是建使用at必須有管理員權限

at 09:10 "cmd /c D:/Test.bat"

然后在 9:10 系統就會自動后台以SYSTEM權限運行這個bat

 


5.利用ftype文件關聯

ftype batfile=C:/Windows/System32/mshta "javascript:new ActiveXObject('WScript.Shell').Run('cmd /c%1',0);window.close();"

 

6.其他用戶

Windows 2k/XP支持多用戶,如果能在后台登陸另一個賬戶的桌面然后運行一個批處理,就能完全達到隱藏的目的

 

7.編譯成可執行文件

不少方法可以實現,可以直接利用的工具有 Quick Batch file compiler。

以上方法由系統盒www.xitonghe.com 小編網絡整理,希望對大家有幫助。

 

出處:http://www.xitonghe.com/jiaocheng/diannao-9298.html

=======================================================================================

批處理隱藏自身窗口,很無聊

批處理隱藏運行效果代碼,防止出現黑窗口不建議非法用途,可以用來執行命令,提供用戶體驗。

 

復制代碼 代碼如下:

@echo oFF
::code by LZ-MyST QQ:8450919 BLOG:http://hi.baidu.com/lzmyst http://www.clxp.net.cn
if "%1" neq "1" (
>"%temp%\tmp.vbs" echo set WshShell = WScript.CreateObject^(^"WScript.Shell^"^)
>>"%temp%\tmp.vbs" echo WshShell.Run chr^(34^) ^& %0 ^& chr^(34^) ^& ^" 1^",0
start /d "%temp%" tmp.vbs
exit

)
::從這里開始,就是你的批處理代碼了,DOS黑框一閃而過,轉到后台運行了
pause
::你會在任務管理器看到有一個隱藏窗口的CMD進程

運行bat時隱藏cmd窗口的方法

運行bat時隱藏cmd窗口的方法 可以編輯一個vbs腳本,在其中以隱藏窗口運行批處理程序。
復制代碼 代碼如下:

Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c 批處理程序名",vbhide

將上面代碼拷貝到記事本中,保存為"runbat.vbs"或者其它的名字(擴展名必須是.vbs),然后點擊運行生成的腳本runbat.vbs,即可隱藏運行指定的批處理程序。
這個vbs腳本也可以在bat環境中直接調用,達到隱藏bat自身的目的。
自己總結一下,做幾個例子,有興趣的去試驗一下啊!
復制代碼 代碼如下:

Set ws = CreateObject("Wscript.Shell")
wscript.sleep 1200 ws.run "cmd /c start winrar.exe",vbhide
wscript.sleep 2200 ws.run "cmd /c start msimn.exe",vbhide
wscript.sleep 1200 ws.run "cmd /c start iexplore.exe",vbhide


下面來幾個高手整理的

 

幾種隱藏批處理運行窗口的方法 .
(1)通過批處理命令實現。缺點:會看到一個窗口一閃而逝。優點:簡單,直接添加即可。

 

復制代碼 代碼如下:

@echo off
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
::以下為正常批處理命令,不可含有pause set/p等交互命令
pause

 

(2)利用vbs腳本實現隱藏。缺點:調用麻煩點。優點:基本看不到痕跡(非絕對的,指一般用戶)

HideRun.vbs

 

復制代碼 代碼如下:

CreateObject("WScript.Shell").Run "cmd /c D:/test.bat",0

 

其中D:/test.bat是你的批處理路徑
.....................................................................................................................................
另一思路為把bat轉換成vbs,然后vbs生成一個臨時bat文件,然后WScript.Shell.Run隱藏啟動這個臨時bat。
HideRun.bat

 

復制代碼 代碼如下:

echo CreateObject("WScript.Shell").Run "cmd /c D:/test.bat",0>$tmp.vbs
cscript.exe /e:vbscript $tmp.vbs
del $tmp.vbs

 

這個批處理其實不能使其批處理本身隱藏,但是下面大部分隱藏調用批處理的原理和基礎。
HideRun.js

 

復制代碼 代碼如下:

new ActiveXObject('WScript.Shell').Run('cmd /c D:/Test.bat',0);

 

用Javascript有什么好處呢?js的字符串變量可以用單引號,從而方便命令行作為參數調用,而且js很好的支持多行語句用 ; 分隔寫成一行。要注意的是:js要區分大小寫,方法
必須用括號,結尾必須有分號。所以就成了下面的命令:

 

復制代碼 代碼如下:

mshta "javascript:new ActiveXObject('WScript.Shell').Run('cmd /c D:/test.bat',0);window.close()"
 

 

       通常系統管理員會向用戶端推送一些腳本並運行,或者拷貝批處理文件到客戶端由用戶自己運行。但是大部分腳本在運行時會彈出黑色背景的DOS窗口,這會讓不少用戶不知所
措,甚至誤操作關閉正在運行的窗口。好在批處理文件的DOS窗口是可以隱藏的,以下是幾種隱藏批處理運行窗口的方法。
1.基礎
HideRun.vbs
CreateObject("WScript.Shell").Run "cmd /c D:/test.bat",0
其中D:/test.bat是你的批處理路徑
另一思路為把bat轉換成vbs,然后vbs生成一個臨時bat文件,然后WScript.Shell.Run隱藏啟動這個臨時bat。
HideRun.bat

 

復制代碼 代碼如下:

echo CreateObject("WScript.Shell").Run "cmd /c D:/test.bat",0>$tmp.vbs
cscript.exe /e:vbscript $tmp.vbs
del $tmp.vbs

 

這個批處理其實不能使其批處理本身隱藏,但是下面大部分隱藏調用批處理的原理和基礎。
HideRun.js
new ActiveXObject('WScript.Shell').Run('cmd /c D:/Test.bat',0);
用Javascript有什么好處呢?js的字符串變量可以用單引號,從而方便命令行作為參數調用,而且js很好的支持多行語句用 ; 分隔寫成一行。要注意的是:js要區分大小寫,方法
必須用括號,結尾必須有分號。所以就成了下面的命令:
mshta "javascript:new ActiveXObject('WScript.Shell').Run('cmd /c D:/test.bat',0);window.close()"
2.用快捷方式
如果要使一個批處理本身隱藏,可以參考附件里的一個快捷方式,修改附件中的相關路徑即可隱藏啟動你的批處理。可以用vbs來建立一個 .lnk,其實用批處理也行(先echo一個
vbs出來)
3.利用系統服務
可以建立一個系統服務然后啟動這個服務來啟動批處理。缺點是啟動服務較慢,需要管理員權限
runassrv add /cmdline:"C:/Windows/System32/cmd.exe /c D:/test.bat" /name:"mysrv"
net start mysrv
4.利用at計划任務
用at可以建立一個計划任務,在不輸入 /interactive 參數可以后台運行。但是建使用at必須有管理員權限
at 09:10 "cmd /c D:/Test.bat"
然后在 9:10 系統就會自動后台以SYSTEM權限運行這個bat

5.利用ftype文件關聯
ftype batfile=C:/Windows/System32/mshta "javascript:new ActiveXObject('WScript.Shell').Run('cmd /c%1',0);window.close();"
6.其他用戶
Windows 2k/XP支持多用戶,如果能在后台登陸另一個賬戶的桌面然后運行一個批處理,就能完全達到隱藏的目的
7.編譯成可執行文件
不少方法可以實現,可以直接利用的工具有 Quick Batch file compiler。

 

出處:https://www.jb51.net/article/14352.htm

=======================================================================================


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM