Apakah ada cara yang baik untuk mendapatkan kotak pesan untuk muncul pada waktu yang dijadwalkan di atas jendela lain? Tindakan "Tampilkan Pesan" default tidak berguna muncul di bawah segalanya.
sumber
Apakah ada cara yang baik untuk mendapatkan kotak pesan untuk muncul pada waktu yang dijadwalkan di atas jendela lain? Tindakan "Tampilkan Pesan" default tidak berguna muncul di bawah segalanya.
Bagaimana kalau menggunakan msg
perintah bawaan Window seperti itu?
msg * "Message you would like to send"
Anda dapat menambahkan parameter lain seperti di /TIME:x
mana x adalah jumlah detik yang Anda inginkan untuk ditampilkan pesan. Tentu saja, msg /?
akan menunjukkan kepada Anda semua opsi yang tersedia.
Ini menyiratkan Windows XP dan lebih tinggi sebagai sistem tempat Anda ingin menampilkan pesan. Jika Anda memiliki Home Edition dari OS yang berlaku, Anda kurang beruntung. Lihat http://ss64.com/nt/msg.html untuk parameter yang tersedia.
Jika Anda memiliki Edisi Rumah, skrip kumpulan berikut akan memunculkan pesan menggunakan metode PopUp VBSCript:
@echo off
::See http://msdn.microsoft.com/en-us/library/x83z1d9f(v=vs.84).aspx
::for an explanation of the PopUp method
::
::Use the directory from whence script was called as working directory
set CWD=%~dp0
::Use a random file name for the temporary VBScript.
set usrmsg=%CWD%%random%.vbs
::First parameter is the timeout in seconds. 0 = wait forever
set _timeout=%~1
::Second parameter is the message, enclosed in quotes.
set _Message=%~2
::Third parameter is the title of the window, enclosed in quotes.
set _Title=%~3
::This last variable is used to display a button/icon on the window.
::Setting this to 4096 sets the window to Modal (on top of everything else)
set _nType=4160
::Create the temp script using the provided information.
ECHO Set wshShell = CreateObject( "WScript.Shell" )>%usrmsg%
ECHO wshShell.Popup "%_Message%" ^& vbCrLf, %_Timeout%, "%_Title%", %_nType%>>%usrmsg%
::Run the script.
WSCRIPT.EXE %usrmsg%
::Delete the script.
DEL %usrmsg%
::Exit the batch file
exit /b
Semoga ini membantu!
Ditambahkan: Gregg menyebutkan dalam komentar bahwa agar ini berfungsi di Windows 10, Anda harus menggunakan "/ waktu: 0" jika Anda ingin pesan tetap di layar lebih dari 60 detik.
msg
? Saya tidak mendapatkan apa-apa jika saya mencoba menjalankannya dari kotak Jalankan atau dari command prompt./TIME:0
. Ini ada di Win10 x64 v1607 Enterprise LTSB. Saya bertanya-tanya mengapa skrip saya diuji dengan baik, tetapi saya tidak pernah menerima pesan ketika saya memasukkan Penjadwal Tugas. Steker memalukan: serverfault.com/a/931932/131761Juga lihat https://www.howtogeek.com/136894/how-to-create-popup-reminders-with-no-additional-software/ . Dalam kasus kematian tautan, saya akan meringkas di sini:
Ini akan menghasilkan jendela konsol dengan teks yang diberikan, yang akan muncul DI ATAS jendela Anda saat ini, tetapi tidak akan secara otomatis mencuri fokus (Anda dapat terus berinteraksi dengan jendela Anda saat ini seperti biasa).
Ini adalah solusi terbaik yang saya temukan, semoga membantu seseorang!
sumber
Gunakan
msgbox
dalam vbs. seperti ini:Kode
&h51000
akan memastikan kotak pesan di tengah dan di atas semua jendela lain sepanjang waktu.Jika Anda hanya ingin menjadwalkan kotak pesan, Anda cukup menggunakan penjadwal tugas, ada fungsi bawaan untuk menjadwalkan pesan. lihat lokasi [memulai program] di penjadwal tugas.
sumber
Display a Message
sudah usang, danmsg
perintah tidak bekerja untuk saya di Windows 10 1703. Saya menggunakanpowershell
untuk menampilkan kotak pesan dari tugas yang dijadwalkan, gunakan ini sebagai argumen ketika mendefinisikan tindakan:AF jelek, tapi berhasil.
sumber
powershell
solusi, kotak pesan muncul. Saat menggunakanmsg
solusi tidak ada yang terjadi, seperti yang saya nyatakan dalam komentar saya.powershell -WindowStyle hidden -File "<path to script>"
tetapi tidak berhasil, itu hanya bekerja dengan-Command
argumen, jadi:powershell -WindowStyle hidden -Command "& '<path to script>'"