Windowsで起動時にメールする

Windows で起動時にメール送信する設定です。
タスクスケジューラの設定と、メール送信スクリプトの記述が必要です。


事前準備


下記サイトの、「サンプルスクリプト3:sendmsgv2.ps1」の通りに sendmsgv2.ps1 を作成し、c:\ 直下に置きます。
"SMTPサーバーのFQDNまたはIPアドレス" 等の個所は、各自の環境に合わせて記述します。

タスクスケジューラに残された使えない機能の怪:その知識、ホントに正しい? Windowsにまつわる都市伝説(9) - @IT


作成した sendmsgv2.ps1 で、ちゃんとメール送信できるか確認します。
コマンドプロンプト/PowerScriptShell で次を実行します。
[宛先メールアドレス] の個所はメールアドレスを記述します。


powershell -NoProfile -ExecutionPolicy unrestricted -Command "c:\sendmsgv2.ps1 -msgTo '宛先メールアドレス' -msgSubject 'Windows起動' -msgBody '起動しました'"


記述した宛先メールアドレス宛に、メールが送信されるか確認して下さい。



タスクスケジューラで起動時にメール送信する設定


タスクスケジューラで設定を行います。

Windows10 では、スタートメニューで右クリック - コンピューターの管理 - タスクスケジューラ で起動します。
Windows7 では、スタートメニュー - コントロールパネル - システムとセキュリティ - タスクのスケジュール で起動します。


タスクスケジューラが起動したら、次の設定を行います。


"タスクの作成" を選択します。

画像



現れた画面で、次の設定を行います。

[全般タブ]タブで、"名前"にタスク名(何でもいいです)を入力し、 「ユーザーがログオンしているかどうかにかかわらず実行する」にチェックを付けます。

[トリガー]タブで、[新規]ボタンを押し、現れたダイアログの "タスクの開始" で "スタートアップ時" を選択して [OK]ボタンを押します。

[操作]タブで、[新規]ボタンを押します。

画像



現れた画面で、次の設定を行います。

"操作" で "プログラムの開始" を選択します。
なお、ここで "電子メールの送信" がありますが、Windows8.1以降では非推奨で機能しない(参考)のと、SMTPサーバの指定でポート番号を指定できないため、ここでは使用しません。

"プログラム/スクリプト" に powershell.exe を入力します。

"引数の追加(オプション)" に次の内容を入力し、[OK]ボタンを押します。

-NoProfile -ExecutionPolicy unrestricted -Command "c:\sendmsgv2.ps1 -msgTo '宛先メールアドレス' -msgSubject 'Windows起動' -msgBody '起動しました'"



最後に[OK]ボタンを押します。
「このタスクを実行するユーザー アカウント情報を入力してください」と出た場合は、ログインパスワードを入力します。

作成したタスクが正しく設定されているか、確認します。
追加したタスクを選択して、画面右側の[実行] を押します。
メールが送信されることを確認して下さい。

画像




これで、Windows起動時にメールが送信されます。


参考


イベント・ログをトリガーにしてメールを送信する(基本編):Tech TIPS - @IT
Windowsに誰かがログオンしたらそのユーザ名をメールで送信する - Qiita
タスクスケジューラに残された使えない機能の怪:その知識、ホントに正しい? Windowsにまつわる都市伝説(9) - @IT







Windows7深刻トラブル自力解決 最新版 (TJMOOK)
宝島社

ユーザレビュー:

amazon.co.jpで買う
Amazonアソシエイト by Windows7深刻トラブル自力解決 最新版 (TJMOOK) の詳しい情報を見る / ウェブリブログ商品ポータル

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

だい
2020年04月14日 14:49
はじめまして。こんにちは。
上記の記事を参考にさせていただいておりますが、一点不明点がありますのでよければ教えて下さい。

複数人にメールをしたい場合はどのようにすれば良いのでしょうか。
パソコン鳥
2020年04月15日 23:26
sendmsgv2.ps1の中を改造して複数人にメールを送るようにするか、タスクスケジューラの登録を、複数人の分だけ宛先メールを変えて登録する、というところですね。
カズミント
2020年10月28日 18:07
はじめまして。カズミントと申します。
離れて暮らしている母親の生存確認のために利用させていただいております。

質問です。
起動時だけではなくシャットダウン時にも送信されるようなのですがそういう仕様なのでしょうか。それはそれでありがたいのですが。
パソコン鳥
2020年10月29日 21:16
最近メール送信オンにしていなかったので、挙動が変わったかな?とためしましたが、記事の通り、起動時だけでした。
Windows10です。
タスクスケジューラのタスク一覧で、トリガーの箇所が「システム起動時」になっていますでしょうか?
カzミント
2020年10月30日 09:53
タスクスケジューラの設定に間違いがあるのか挙動が安定しません。
シャットダウン時に届いたり起動時に届かなかったり。
もう一度確認してみます。

ありがとうございました。

この記事へのトラックバック