What is the proper way to close/exit programs from command line,
similar to pressing the "X" close button in the corner of the window?
Jawaban untuk pertanyaan itu dapat ditemukan here
( tautan Microsoft ).
Anda dapat mengirim WM_CLOSE
pesan ke jendela mana saja yang ingin Anda tutup. Banyak jendela menangani WM_CLOSE
untuk meminta pengguna untuk menyimpan dokumen.
Alat yang melakukan ini dengan benar adalah @Kill
. Lihat juga SendMsg .
Saya tidak tahu bagaimana melakukan ini dalam batch, tetapi Anda bisa menggunakan vbscript untuk ini. Mensimulasikan tombol Alt+ F4(sama dengan sinyal WM_CLOSE
).
Jalankan dan lihat perilaku skrip ini di bawah ini.
Set WshShell = WScript.CreateObject("WScript.Shell")
' Start Notepad.exe
WshShell.Run "%windir%\notepad.exe"
' Select, or bring Focus to a window named `Notepad`
WshShell.AppActivate "Notepad"
' Wait for 4 seconds
WScript.Sleep 4000
WshShell.SendKeys "Foo"
WshShell.SendKeys "{ENTER}"
WshShell.SendKeys "Bar"
WshShell.SendKeys "{ENTER}"
WshShell.SendKeys "{CAPSLOCK}"
WshShell.SendKeys "baz"
WshShell.SendKeys "%{F4}"
Here
adalah nama kunci daftar untuk SendKeys.
Ketika Anda menjalankan skrip, notepad terbuka, beberapa kata ditulis dan kemudian sinyal untuk menutup program disampaikan, lihat gambar di bawah.
Pertanyaan tambahan
Bisakah saya memulai program yang diperkecil, atau latar belakang dengan vbscript?
Iya. Gunakan kode berikut:
WshShell.Run "%windir%\notepad.exe", 2
Untuk informasi lebih lanjut, periksa Run Method
.
Bisakah chrome membuka beberapa url di vbscript?
Dim iURL
Dim objShell iURL = "www.google.com"
set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "chrome.exe", iURL, "", "", 1
Jika chrome adalah default, gunakan:
set objShell = CreateObject("WScript.Shell")
objShell.run(iURL)
Source
Apakah ada cara untuk membawa fokus ke aplikasi tertentu ( chrome.exe )?
Here
dalam sebuah contoh.
Saya ingin mengirim alt + f4 HANYA ke chrome, terlepas dari apa yang saya lakukan dengan windows lain.
Kode berikut ini berfungsi pada Windows 8 .
Dim objShell
iURL = "www.google.com.br"
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run(iURL)
' Select, or bring Focus to Google Chrome
WshShell.AppActivate "Google Chrome"
' Wait for 5 seconds
WScript.Sleep 5000
WshShell.SendKeys "%{F4}"