iT邦幫忙

0

批次檔如何隱藏被呼叫的程式

  • 分享至 

  • xImage

請問各位前輩,如何將我在批次檔中,所呼叫的程式隱藏視窗(並非是批次檔本身視窗)
主要我會在批次檔中,使用diskpart
但在跑批次檔時,除了批次檔本身會彈出一個命令提示字元的視窗外
跑diskpart時,還有另外彈一個視窗出來
隱藏批次檔本身的視窗,使用vbs是可以做到
但diskpart視窗仍會彈出來,那麼就達不到背景執行的目的
Google結果所找到的,都是隱藏批次檔本身的視窗
找不到當我執行某程式時隱藏該視窗
先謝謝各位前輩

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

1
nwm310
iT邦新手 4 級 ‧ 2021-01-30 11:04:14

批次檔本身的視窗和diskpart視窗不一樣
diskpart視窗是系統管理員權限

在bat最前面加二行

%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",0)(window.close)&exit /b
cd  /d  "%~dp0"

新開一個bat視窗(系統管理員權限、隱藏視窗)
一開始的工作目錄是 C:\WINDOWS\system32
所以,切換工作目錄到bat所在目錄

第一行的寫法:bat執行時必須沒有參數
例如:點兩下

我要發表回答

立即登入回答