Imports System
Imports System.Windows.Forms
Imports Microsoft.Win32
Imports System.Net.Mail
Imports System.Net.Mail.SmtpClient
Imports System.ServiceProcess
Public Class Service1
Dim smtp() As SmtpClient
Dim MailHost As String = "172.1.1.1"
Dim FromAdd As String = "gao@bjd.ne.jp"
Dim Message As String = String.Empty
' サービス開始
Protected Overrides Sub OnStart(ByVal args() As String)
' サービスを開始するコードをここに追加します。このメソッドによって、
' サービスが正しく実行されるようになります
Message = "サービスが正常に開始しました。"
SendMail("サービス開始通知", Message)
'EventLog.WriteEntry("Start")
End Sub
' 手動サービス停止
Protected Overrides Sub OnStop()
'サービスを停止するのに必要な終了処理を実行するコードをここに追加します。
'EventLog.WriteEntry("End")
Message = "手動でサービスを停止しました。"
SendMail("サービス停止通知", Message)
End Sub
' Windowsがシャットダウンしようとしているとき
Protected Overrides Sub OnShutdown()
Message = "Windowsのシャットダウンにより、サービスが停止されました。"
SendMail("サービス停止通知", Message)
MyBase.OnShutdown()
End Sub
' メール送信
Private Sub SendMail(ByVal TitleMsg As String, ByVal BodyMsg As String)
Dim ToAdd As String = "li@bjd.ne.jp,gao@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 log(ByVal Message As String)
Dim sw As IO.StreamWriter = New IO.StreamWriter("C:/Documents and Settings/Administrator/デスクトップ/test.txt", True, System.Text.Encoding.Default)
sw.Write(Message)
sw.Flush()
sw.Close()
End Sub
End Class