'ログオフ、シャットダウンの通知(メールの方式)

Imports System
Imports Microsoft.Win32
Imports System.Net.Mail
Imports System.Net.Mail.SmtpClient
'ログオフ、シャットダウンの通知
Public Class Form1
    Dim smtp() As SmtpClient
    Dim MailHost As String = "172.18.1.3"
    Dim FromAdd As String = "aa@bjd.ne.jp"
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Try
            'イベントをイベントハンドラに関連付ける
            'フォームコンストラクタなどの適当な位置に記述してもよい
            AddHandler SystemEvents.SessionEnding, AddressOf SystemEvents_SessionEnding
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try

    End Sub

    Private Sub Form1_Closed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Closed
        'イベントを開放する
        'フォームDisposeメソッド内の基本クラスのDisposeメソッド呼び出しの前に
        '記述してもよい
        RemoveHandler SystemEvents.SessionEnding, AddressOf SystemEvents_SessionEnding
    End Sub

    'ログオフ、シャットダウンしようとしているとき
    Private Sub SystemEvents_SessionEnding(ByVal sender As Object, ByVal e As SessionEndingEventArgs)
        Dim s As String = String.Empty
        If e.Reason = SessionEndReasons.Logoff Then
            s = "ログオフしようとしています。"
        ElseIf e.Reason = SessionEndReasons.SystemShutdown Then
            s = "シャットダウンしようとしています。"
        End If

        'e.Cancel = False
        'SendMail(s, s)
        If MessageBox.Show(s + vbNewLine + "キャンセルしますか?", _
                "質問", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
            'キャンセルする
            e.Cancel = True
        Else
            '実行する
            SendMail(s, s)
        End If
    End Sub
    Private Sub SendMail(ByVal TitleMsg As String, ByVal BodyMsg As String)
        'Dim ToAdd As String = "aa@bjd.ne.jp"
        Dim ToAdd As String = "bb@bjd.ne.jp,cc@bjd.ne.jp,dd@bjd.ne.jp,ee@bjd.ne.jp"
        Dim MailSubject As String = TitleMsg
        Dim MailBody As String = BodyMsg
        Dim sc As New SmtpClient()
        Dim msg As New MailMessage()

        sc.Host = MailHost
        msg.From = New MailAddress(FromAdd)
        msg.To.Add(ToAdd)
        msg.Subject = MailSubject
        msg.Body = MailBody
        sc.Send(msg)
    End Sub
    Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click
        'Dim t As String = "test"
        'Dim b As String = "body"
        'SendMail(t, b)
        Me.Close()
    End Sub
End Class
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值