1: Imports System.Web.Mail 2: 3: Enum ReportType 4: ToMessageBox = 0 5: ToEventLog = 1 6: ToEMail = 2 7: End Enum 8: 9: Public Class Form1 10: Inherits System.Windows.Forms.Form 11: 12: …Windows フォーム デザイナで生成されたコード… 13: 14: Private Sub ReportToMessageBox(ByVal msg As String) 15: MessageBox.Show(msg) 16: End Sub 17: 18: Private Sub ReportToEventLog(ByVal msg As String) 19: If Not EventLog.SourceExists("SampleSource") Then 20: EventLog.CreateEventSource("SampleSource", "SampleNewLog") 21: End If 22: Dim myLog As New EventLog() 23: myLog.Source = "SampleSource" 24: myLog.WriteEntry(msg) 25: End Sub 26: 27: Private Sub ReportToEMail(ByVal msg As String) 28: Dim from As String = "autumn@piedey.co.jp" 29: Dim mailto As String = "autumn@piedey.co.jp" 30: Dim subject As String = "Sample Error Report" 31: Dim body As String = msg 32: SmtpMail.Send(from, mailto, subject, body) 33: End Sub 34: 35: Private reportMode As ReportType 36: 37: Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 38: reportMode = ReportType.ToMessageBox 39: End Sub 40: 41: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 42: Dim msg As String 43: msg = "エラーが発生しました" 44: Select Case reportMode 45: Case ReportType.ToMessageBox 46: ReportToMessageBox(msg) 47: Case ReportType.ToEventLog 48: ReportToEventLog(msg) 49: Case ReportType.ToEMail 50: ReportToEMail(msg) 51: End Select 52: End Sub 53: 54: Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged 55: reportMode = ReportType.ToMessageBox 56: End Sub 57: 58: Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton2.CheckedChanged 59: reportMode = ReportType.ToEventLog 60: End Sub 61: 62: Private Sub RadioButton3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton3.CheckedChanged 63: reportMode = ReportType.ToEMail 64: End Sub 65: End Class