現在ログオンしているユーザーがメッセージを表示できるように、メッセージをポップアップ表示したり、リモートコンピューターでプログラムを実行したりするにはどうすればよいですか。
WinXPでこれを行いましたが、Win7では動作しません。
at.exe \\computername time /interactive message.vbs
(時刻は少なくとも1分後のhh:mmです)
psexec.exe \\computername -I message.vbs
それをテストするには、message.vbsをNotepad.exeに置き換えます。
NetsendメッセージはWindows 7から削除されました。
サードパーティのソフトウェアをインストールせずにこれを行うことがわかった1つの方法は、リモートシャットダウンコマンドを利用することです。
shutdown -m //computername -r -f -c "MESSAGE" -t 120
shutdown -m //computername -a
最初のコマンドはメッセージをポップアップし、120秒でシャットダウンを開始します。2番目のコマンドはリモートシャットダウンをキャンセルします(-a)。
最初に重要ではない何かでこれをテストしてください!
これはmsg
で実行できるはずです。何かのようなもの
msg <username> /SERVER:<servername> <message
vbscriptによる:
dim WMIObj, strHost, intProcessID
on error resume next
strHost = "remotehost.domain.com"
set WMIObj = GetObject("winmgmts:\\" & strHost & "\root\cimv2:Win32_Process")
if IsObject(WMIObj) then
WMIObj.Create "cmd.exe /C msg * ""ha-ha-ha""", null, null, intProcessID
end if
set WMIObj = nothing
次のコマンドは、XPおよび2003サーバーから開始された7で機能します。
at \\remotecomputer time /interactive msg remoteuser /SERVER:remotecomputer This is the message
remotecomputer
はメッセージが表示されるコンピューターで、remoteuser
はリモートコンピューターにログインしているユーザー(メッセージを表示する必要があるユーザー)です。
リモートコンピューター上のすべてのatコマンドをクリアするには、次のコマンドを使用します。
at \\remotecomputer /delete /yes
「メッセージ」の前にこれを使用します。
XPユーザーの場合at.exe\computername time/interactive message.vbs
windows 7の場合、SCHTASKS/Create/SC DAILY/TN my1stschtask/TR message.vbs/ST hh:mm:ss/SD dd/mm/yyyyを試してください
ここで、my1stschtaskは、ATタスクを削除するためのIDのIDには参照が必要です)などのスケジュールされたタスク名(タスクを削除する必要があるときに参照されます)
Dosコマンドラインで、schtasks /?関連情報を検索する