こんにちは、今日もソフトウェアについてほのぼのと記載します。
子供がRobloxというオンラインゲームにはまってて、
1日1時間までと約束しているにもかかわらず、約束無視な状態です。
ということで、Robloxを起動したら、
それをトリガとして、1時間経過したら
シャットダウンをする仕組みを作ってみました。
以下、私の環境ですが、この仕組みを参考にする場合、自己責任でお願いします。
(システムを触ったりするので、PCが動作しなくなっても保証はしません。
尚、時間関係は長くしておいた方が良いです。短すぎると、戻せなくなったりする為。1800秒以上あると良いかも。)
[環境]
OS: Windows10Home
ソフト:バッチファイル(コマンドプロンプトで実行できる処理群でWindowsに標準でついているものなので追加インストールは必要ありません。)
タスクスケジューラ:作成したバッチファイルを指定することで自動実行
1.まず、2つのバッチファイルを作成します。
(local_shutdown_master.bat(起動用)、
local_shutdown_exe.bat(処理本体))
それぞれのファイル内容は以下の通りです。
[local_shutdown_master.bat]
rem バッチファイルを最小のウィンドウで呼び出す
@echo off &
start /min %~dp0local_shutdown_exe.bat %*
exit
[local_shutdown_exe.bat]
@echo off &
:loop
rem スケジューラを詳細状態で検索”Roblox”
tasklist /V | find "Roblox" &
rem キーワードが見つかった
if %ERRORLEVEL%==0 (
rem 1時間後に強制シャットダウン
shutdown /t 3600 /s /f
goto noloop
)
timeout /t 60 /nobreak &
goto loop
:noloop
2.タスクスケジューラへ作った起動用のバッチファイルを登録します。
[タスクスケジューラへの登録]
スタートアイコン→Windows管理ツール→コンピュータの管理で起動
タスクスケジューラに基本タスクの生成を行います。
トリガー:ログオン時、
操作:プログラムの開始
プログラム/スクリプト:バッチのあるパス/local_shutdown_exe.bat
開始オプション:バッチのあるパス
を登録します。
これで、再起動したときに目的の動作をします。
スケジューラを止めたいときは、
作成したスケジューラを削除してください。(自己責任でお願いします。)
ゲームへの集中力を勉強に向けてくれれば中学受験成功する筈なのですが。一向にしてくれません。。。
Robloxは面白すぎるゲーム世界で、ゲーム世界の中に個人が作ったゲームが数多くあり、
飽きが全く見えない世界です。
クリエイター目指してくれるなら良いのですが、
残念ながら手のひらで踊らされている一人です。