Jawaban:
Anda dapat menggunakan kata kunci keluar. Ini adalah contoh dari salah satu file batch saya:
start myProgram.exe param1
exit
exit
ke dalam file batch.
start "VPN" "C:\Program Files (x86)\Cisco\Cisco AnyConnect Secure Mobility Client\vpnui.exe"
Gunakan perintah mulai untuk mencegah file batch menunggu program. Ingatlah untuk meletakkan tanda kutip ganda kosong di depan program yang ingin Anda jalankan setelah "Mulai". Misalnya, jika Anda ingin menjalankan Visual Studio 2012 dari perintah batch:
Start "" "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe"
perhatikan kutipan ganda setelah mulai.
start <window name> <program name>
Lihatlah perintah MULAI, Anda dapat melakukan ini:
START rest-of-your-program-name
Misalnya, file batch ini akan menunggu hingga notepad keluar:
@echo off
notepad c:\test.txt
Namun, ini tidak akan:
@echo off
start notepad c:\test.txt
Dari pertanyaan saya sendiri :
start /b myProgram.exe params...
berfungsi jika Anda memulai program dari sesi DOS yang ada.
Jika tidak, hubungi skrip vb
wscript.exe invis.vbs myProgram.exe %*
Metode Windows Script Host Run () mengambil:
Inilah invis.vbs:
set args = WScript.Arguments
num = args.Count
if num = 0 then
WScript.Echo "Usage: [CScript | WScript] invis.vbs aScript.bat <some script arguments>"
WScript.Quit 1
end if
sargs = ""
if num > 1 then
sargs = " "
for k = 1 to num - 1
anArg = args.Item(k)
sargs = sargs & anArg & " "
next
end if
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run """" & WScript.Arguments(0) & """" & sargs, 0, False
Ini adalah satu-satunya hal yang bekerja untuk saya ketika saya mencoba menjalankan kelas java dari file batch:
start "cmdWindowTitle" /B "javaw" -cp . testprojectpak.MainForm
Anda dapat menyesuaikan start
perintah sesuai keinginan untuk proyek Anda, dengan mengikuti sintaks yang tepat:
Syntax
START "title" [/Dpath] [options] "command" [parameters]
Key:
title : Text for the CMD window title bar (required)
path : Starting directory
command : The command, batch file or executable program to run
parameters : The parameters passed to the command
Options:
/MIN : Minimized
/MAX : Maximized
/WAIT : Start application and wait for it to terminate
/LOW : Use IDLE priority class
/NORMAL : Use NORMAL priority class
/HIGH : Use HIGH priority class
/REALTIME : Use REALTIME priority class
/B : Start application without creating a new window. In this case
^C will be ignored - leaving ^Break as the only way to
interrupt the application
/I : Ignore any changes to the current environment.
Options for 16-bit WINDOWS programs only
/SEPARATE Start in separate memory space (more robust)
/SHARED Start in shared memory space (default)
Anda harus mencoba ini. Ini memulai program tanpa jendela. Ini sebenarnya berkedip untuk sesaat tetapi hilang cukup cepat.
start "name" /B myprogram.exe param1
"title"
pilihan adalah penting. Jika path dari program termasuk spasi, harus diapit tanda kutip sehingga kita harus menambahkan "title"
untuk menghindari kegagalan.
Cara mengatasi "masalah ruang" dan dependensi lokal:
@echo off
cd "C:\Program Files\HeidiSQL"
start heidisql.exe
cd "C:\Program Files (x86)\Google\Chrome\Application"
start chrome.exe
exit
Sudah banyak jawaban untuk pertanyaan ini, tetapi saya memposting ini untuk mengklarifikasi sesuatu yang penting, meskipun ini mungkin tidak selalu terjadi:
Start "C:\Program Files\someprog.exe"
Mungkin menyebabkan masalah di beberapa versi windows karena Start
sebenarnya mengharapkan set pertama tanda kutip menjadi judul windows. Jadi itu praktik terbaik untuk pertama kali mengutip dua kali komentar, atau komentar kosong:
Start "" "C:\Program Files\someprog.exe"
atau
Start "Window Title" "C:\Program Files\someprog.exe"
Solusi saya untuk melakukan ini dari GUI:
Buat pintasan ke program yang ingin Anda jalankan;
Edit properti pintasan;
Ubah TARGET
field menjadi %COMSPEC% /C "START "" "PROGRAMNAME""
;
Ubah RUN
field menjadi diminimalkan.
Siap! Lihat bagaimana Anda menyukainya ...
PS: Parameter program dapat dimasukkan di antara dua tanda kutip akhir; yang PROGRAMNAME
string dapat berupa nama file, kerabat atau path absolut - jika Anda masukkan ke dalam path absolut dan menghapus huruf drive dan titik koma, maka ini akan bekerja dalam thumbdrive tidak peduli apa surat yang ditunjuk komputer host untuk itu .. (juga, jika Anda menempatkan pintasan di folder yang sama dan mendahului nama file program PROGRAMNAME
dengan %CD%
variabel, path akan selalu cocok; trik yang sama dapat digunakan di START IN
lapangan).
Jika file batch ini adalah sesuatu yang ingin Anda jalankan sesuai jadwal atau selalu; Anda dapat menggunakan alat jadwal windows dan itu tidak terbuka di jendela ketika memulai file batch.
Untuk membuka Task Scheduler
:
'cmd'
taskschd.msc
-> masukkanDari sisi kanan, klik Create Basic Task
dan ikuti menu.
Semoga ini membantu.
Inilah solusi pilihan saya. Ini diambil dari jawaban untuk pertanyaan serupa.
Gunakan VBS Script untuk memanggil file batch:
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "C:\path\to\your\batchfile.bat" & Chr(34), 0
Set WshShell = Nothing
Salin baris di atas ke editor dan simpan file dengan ekstensi .VBS.