CrystalDiskInfoで取得したS.M.A.R.T.情報をメールで送信する。
CrystalDiskInfoのコマンドラインを利用。
$PSVersionTable
Name Value
---- -----
PSVersion 7.3.4
PSEdition Core
GitCommitId 7.3.4
OS Microsoft Windows 10.0.22621
Platform Win32NT
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
WSManStackVersion 3.0
SmtpClientは廃止だそうなので、代わりにMailKitとMimeKitを使う。
以下のコマンドを実行してインストール。
Install-Package -name "MimeKit" -Source "https://www.nuget.org/api/v2" -SkipDependencies
Install-Package -name "MailKit" -Source "https://www.nuget.org/api/v2"
参考動画:PowerShell Tutorials : Send an email using MailKit
config.json.sampleにメール情報を記載してconfig.jsonにリネーム。
以下はサンプル
{
"CDI_DIRECTORY": "C:\\Program Files\\CrystalDiskInfo",
"CDI_EXE_FILE": "DiskInfo64.exe",
"CDI_OPTION": "/CopyExit",
"MAIL": {
"SMTP_SERVER": "smtp.gmail.com",
"SMTP_PORT": 587,
"SMTP_USER": "soushinmoto-email-address",
"SMTP_PASS": "soushinmoto-email-password",
"TO": "okuritai-email-address"
},
"MAIL_LIBRARIES": {
"MAIL_KIT": "C:\\Program Files\\PackageManagement\\NuGet\\Packages\\MailKit.4.0.0\\lib\\netstandard2.0\\MailKit.dll",
"MIME_KIT": "C:\\Program Files\\PackageManagement\\NuGet\\Packages\\MimeKit.4.0.0\\lib\\netstandard2.0\\MimeKit.dll"
}
}
-
ユーザーがログオンしているかどうかにかかわらず実行する
-
最上位の特権で実行する
-
構成:Windows 10
実行したい時間に適当に
新規
- プログラムの開始
- プログラム/スクリプト:
"C:\Program Files\PowerShell\7\pwsh.exe" - 引数の追加(オプション):
-ExecutionPolicy RemoteSigned -File "run.ps1" - 開始(オプション):
D:\Projects\send-cdi-smart
