windows 7や10で動作するはず.
使い方
"監視する実行ファイル名.exe"がすでに実行されているときに, 以下のプログラムを開始する.
time.sleep(10)のとおり,10秒おきにプログラムが終了したか確認する.
プログラムが起動していなければ(終了していれば) メールを送信し,このpythonプログラム自体も勝手に終了する.
import smtplib import subprocess import time while True: # 以下は https://a-zumi.net/python-windows-tasklist/ を参考にした cmd = 'tasklist' proc = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE) time.sleep(10) for line in proc.stdout: s=str(line) if "監視する実行ファイル名.exe" in s: break pass else: break pass continue pass print("finish") # 以下は https://blog.ikappio.com/python-send-mail-connecting-gmail-using-smtplib/ を参考にした # Import the email modules we'll need from email.message import EmailMessage # Create a text/plain message msg = EmailMessage() msg.set_content('メール本文') msg['Subject'] = 'メールタイトル' msg['From'] = '送信元のアドレス' msg['To'] = '送信先のアドレス' # Send the message via our own SMTP server. s = smtplib.SMTP('smtp.gmail.com', 587) s.starttls() # 2つ目の引数に生成したアプリパスワードを指定する s.login("送信アカウントのアドレス", '送信アカウントのアプリパスワード') # 送信 s.send_message(msg) s.quit()