Windows 7啟動批次檔隱藏

Windows 7啟動批次檔隱藏

我按照指南創建了一個批次文件,這樣我就可以將程式啟動延遲幾秒鐘。 (我不想使用第三方工具)

問題是我不想在 X 秒內看到該 cmd 窗口,直到它啟動程式。有任何想法嗎?

這是我在 .bat 檔案中使用的程式碼:

@ECHO OFF
TIMEOUT /t 3 > nul
START "" "C:\program.exe"

答案1

這個 Visual Basic 腳本做了 3 件事。

~ 取得儲存位置的目前目錄.VBS並取得檔案名稱。
~ 以管理員權限執行給定的檔案。 (不提示 UAC)
~ 以靜默方式運行文件,無需您提到的 CMD。

bElevate = False
if WScript.Arguments.Count > 0 Then If WScript.Arguments(WScript.Arguments.Count-1) <> "|" then bElevate = True
if bElevate Or WScript.Arguments.Count = 0 Then ElevateUAC
REM run the following script with admin privilages. start point.

Set fso = CreateObject("Scripting.FileSystemObject")
GetTheParent = fso.GetParentFolderName(Wscript.ScriptFullName)

Set WshShell = WScript.CreateObject ("WScript.Shell")
WshShell.Run GetTheParent & ("\CUSTOMNAMEOFBAT.bat") 
WScript.Sleep 500

REM the above script will be run with admin privilages. end point.
Sub ElevateUAC
    sParms = " |"
    If WScript.Arguments.Count > 0 Then
            For i = WScript.Arguments.Count-1 To 0 Step -1
            sParms = " " & WScript.Arguments(i) & sParms
        Next
    End If
    Set oShell = CreateObject("Shell.Application")
    oShell.ShellExecute "wscript.exe", WScript.ScriptFullName & sParms, , "runas", 1
    WScript.Quit
End Sub

複製/貼上以下程式碼並另存為.VBS.放在 。vbs腳本與您的目錄相同,.bat並將“CUSTOMNAMEOFBAT”(第 11 行末尾)更改為您的.bat.

相關內容