您好,登錄后才能下訂單哦!
這篇文章主要講解了“讓批處理程序啟動時最小化的方法教程”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“讓批處理程序啟動時最小化的方法教程”吧!
批處理隱藏運行 隱藏批處理本身
代碼如下:
@echo off
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
::以下為正常批處理命令,不可含有pause set/p等交互命令
××××××××
解釋:
這個是用 mta 的腳本語言 利用 VBScript 創建了windows 中 wscript.shell該控件,用這個控件里面提供的 run 方法 后臺 運行的這個批處理, mst腳本語言就是相當于 html 應用程序,不管用什么腳本語言,只要能創建 windows系統提供的 wscript.shell這個空間,用這個空間里面的run方法打開 我們也可以用mta腳本語言里面JavaScript一樣能行 @echo off ::批處理隱藏運行 if "%1"=="h" goto begin mshta "javascript:new ActiveXObject('wscript.shell').run('%~nx0 h',0);window.close();"&&exit ::要運行的代碼 :begin echo OK pause>nul mta腳本語言其實和html語言基本一樣,mta腳本語言是用mshta程序解析的,html是用瀏覽器解析的(IE) 建議看下html腳本語言就明白了,這不是用的格式為vbs文件的那個腳本語言,vbs腳本文件是用wscript解析的 只要記住用 用 mshta vbscript:createobject("插件名")(window.close) 這里window.close是那個 mshta 本身里面的方法,就是關閉該程序。 這種格式創建windows提供的插件就行了,插件里面的方法看下文檔就明白了 關于腳本語言不明白的地方可以 HI 我
怎么能夠隱藏批處理的運行窗口
這個不會生成臨時文件(兼容空格路徑的):
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~fs0 h",0)(window.close)&&exit
:begin
rem 下邊開始寫批處代碼了
總結:
將下面任何一句話加在@echo off下面都可以起到隱藏執行的效果,(code標簽后就是要隱藏執行的任務)
兩句代碼的思路相同,實現手段不同.請細細體味:
if "%1"=="h" (goto code) else (mshta vbscript:createobject^("wscript.shell"^).run^("%~fs0 h",0^)^(window.close^)&exit)
if exist #hide.vbs (del #hide.vbs &goto code) else (echo createobject^("wscript.shell"^).run "%~fs0",0 >#hide.vbs&start
#hide.vbs&exit)
這段代碼不會閃提示符出來
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit
:begin
rem 下邊開始寫批處代碼了
.....
最后一個:
if not "%1"=="h" mshta vbscript:createobject("wscript.shell").run("%~sf0 h %*",0)(window.close)&exit /b
shift /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
如何讓批處理文件隱藏運行
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit
:begin
如果雙擊一個批處理,等價于參數為空,而一些應用程序需要參數,比如在cmd窗口輸入shutdowm -s -t 0,其中-s -t 0就為參數。shutdown為%0,-s為%1,-t為%2,以此類推。
第一行我們先跳過,看第二行,表示利用mshta創建一個vbs程序,內容為:createobject("wscript.shell").run(……).如果運行的批處理名為a.bat,在C:\下,那%0代表C:\a.bat,%~nx0代表a.bat。h極為參數%1,0表示隱藏運行。由于你雙擊運行,故第一次批處理%1為空,if不成立,轉而運行下一句。然后再次打開自己,并傳遞參數h,此時if成立,跳轉至begin開始運行。
這兩行很經典,可以使批處理無窗口運行。
另外做個批處理程序來調用即將執行的批處理文件,
我的方法是:
代碼如下:
@echo off
start /min 1.bat
將上面的代碼保存為: 2.bat
之后將你的批處理文件保存為 1.bat,運行之前先打開2.bat,則1.bat就最小化運行了.
感謝各位的閱讀,以上就是“讓批處理程序啟動時最小化的方法教程”的內容了,經過本文的學習后,相信大家對讓批處理程序啟動時最小化的方法教程這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。