Exchange Messagetracking Tool

Hi,

This is my second blog about exchange tools.

I wrote a messagetracking tool for exchange 2007/2010.
Its a GUI similar to the built-in exchange Messagetracking Tool but with some advantages:
  • its written in Powershell
  • searches on ALL Hub-Transport Server
  • you can customize it for your need
  • wildcard search
  • export search result to file
  • background image support
  • and its free

########################################################################
# Created On: Oktober 2009
# Created By: maeffy@gmail.com
# Version   : 1.3
# Fix       : save to file was not showing
########################################################################

#region Application Functions

function OnApplicationLoad {
    return $true #return true for success or false for failure
}

#region Main Function
$ErrorActionPreference = "SilentlyContinue"
$Command_Var_Exchangeservers = 'Get-Exchangeserver | Where-Object {$_.IsHubTransportServer -eq "True"} | sort Name | '
$Command_Var0 = "get-messagetrackinglog"
$Command_Var23 = ' | select-object Timestamp,EventId,Source,SourceContext,MessageId,MessageSubject,Sender,@{Name="Recipients";Expression={[string]::join(";", ($_.Recipients))}},InternalMessageId,ClientIp,ClientHostname,ServerIp,ServerHostname,ConnectorId,@{Name="RecipientStatus";Expression={[string]::join(";", ($_.RecipientStatus))}},TotalBytes,RecipientCount,RelatedRecipientAddress,@{Name="Reverence";Expression={[string]::join(";", ($_.Reverence))}},ReturnPath,Messageinfo'

function GenerateForm {
#region Import the Assemblies
[reflection.assembly]::Load("System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089") | Out-Null
[reflection.assembly]::Load("System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a") | Out-Null
[reflection.assembly]::Load("mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089") | Out-Null
[reflection.assembly]::Load("System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089") | Out-Null
#endregion
#region Generated Form Objects
$Mainframe = New-Object System.Windows.Forms.Form
$Save_output = New-Object System.Windows.Forms.Button
$Status_Bar = New-Object System.Windows.Forms.StatusBar
$EventID_combobox = New-Object System.Windows.Forms.ComboBox
$Server_button = New-Object System.Windows.Forms.Button
$Sender_button = New-Object System.Windows.Forms.Button
$Recipients_Button = New-Object System.Windows.Forms.Button
$Search_button = New-Object System.Windows.Forms.Button
$Search_checkbox = New-Object System.Windows.Forms.CheckBox
$End_datetimepicker = New-Object System.Windows.Forms.DateTimePicker
$Shellcommand_label = New-Object System.Windows.Forms.Label
$ShellCommandOutput_richtextbox = New-Object System.Windows.Forms.RichTextBox
$End_label = New-Object System.Windows.Forms.Label
$Start_label = New-Object System.Windows.Forms.Label
$End_checkbox = New-Object System.Windows.Forms.CheckBox
$Reference_richtextbox = New-Object System.Windows.Forms.RichTextBox
$Reference_label = New-Object System.Windows.Forms.Label
$Reference_checkbox = New-Object System.Windows.Forms.CheckBox
$Subject_richtextbox = New-Object System.Windows.Forms.RichTextBox
$Subject_label = New-Object System.Windows.Forms.Label
$Subject_checkbox = New-Object System.Windows.Forms.CheckBox
$Start_checkbox = New-Object System.Windows.Forms.CheckBox
$Start_datetimepicker = New-Object System.Windows.Forms.DateTimePicker
$InternalMessageID_richtextbox = New-Object System.Windows.Forms.RichTextBox
$InternalMessageID_label = New-Object System.Windows.Forms.Label
$InternalMessageID_checkbox = New-Object System.Windows.Forms.CheckBox
$MessageID_richtextbox = New-Object System.Windows.Forms.RichTextBox
$MessageID_label = New-Object System.Windows.Forms.Label
$MessageID_checkbox = New-Object System.Windows.Forms.CheckBox
$EventID_label = New-Object System.Windows.Forms.Label
$EventID_checkbox = New-Object System.Windows.Forms.CheckBox
$Server_richtextbox = New-Object System.Windows.Forms.RichTextBox
$Server_label = New-Object System.Windows.Forms.Label
$Server_checkbox = New-Object System.Windows.Forms.CheckBox
$Sender_combobox = New-Object System.Windows.Forms.ComboBox
$Sender_label = New-Object System.Windows.Forms.Label
$Sender_checkbox = New-Object System.Windows.Forms.CheckBox
$MainGui_label2 = New-Object System.Windows.Forms.Label
$MainGui_label1 = New-Object System.Windows.Forms.Label
$Recipients_combobox = New-Object System.Windows.Forms.ComboBox
$Recipients_label = New-Object System.Windows.Forms.Label
$Recipients_checkbox = New-Object System.Windows.Forms.CheckBox
$InitialFormWindowState = New-Object System.Windows.Forms.FormWindowState
$dataGrid1 = New-Object System.Windows.Forms.DataGrid
$Recipients_tooltip = New-Object System.Windows.Forms.ToolTip
$Sender_tooltip = New-Object System.Windows.Forms.ToolTip
$Server_tooltip = New-Object System.Windows.Forms.ToolTip
$Resultsize_checkbox = New-Object System.Windows.Forms.CheckBox

#endregion Generated Form Objects

#Provide Custom Code for events
$handler_Mainframe_Load={}
##########
## Row 1 Search Button
##########
$handler_Search_button_Click={
    $Mainframe.Cursor = [System.Windows.Forms.Cursors]::WaitCursor
    $Save_output.Enabled = $false
    #$dgDataGrid.Visible = $true
    if ($Search_checkbox.Checked -eq $false){
        $dataGrid1.Rows.clear()
    }
    $cmd = $Command_Var_Exchangeservers + $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17 + $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22 + $Command_Var23
    iex $cmd | Tee-Object -variable output1 | foreach {$dataGrid1.Rows.Add($_.Timestamp,$_.EventId,$_.Source,$_.SourceContext,$_.MessageId,$_.MessageSubject,$_.Sender,$_.Recipients,$_.InternalMessageId,$_.ClientIp,$_.ClientHostname,$_.ServerIp,$_.ServerHostname,$_.ConnectorId,$_.RecipientStatus,$_.TotalBytes,$_.RecipientCount,$_.RelatedRecipientAddress,$_.Reference,$_.ReturnPath,$_.Messageinfo)}
    $Status_Bar.Text = " Results: $($dataGrid1.Rows.Count)"
    $Save_output.Enabled = $true
    $Mainframe.Cursor = [System.Windows.Forms.Cursors]::Arrow
}
$handler_Search_checkbox_CheckedChanged={}
##########
## Line 1 Recipients handling
##########

$handler_Recipients_checkbox_CheckedChanged={
   
    if ($Recipients_checkbox.Checked -eq $false){
        $Recipients_combobox.Text = ""
        $Recipients_combobox.Enabled = $false
        $Command_Var1 = ""
        $Command_Var2 = ""
        $Recipients_Button.Enabled = $false
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        $Recipients_combobox.Enabled = $true
        $Command_Var1 = " -Recipients "
        $Command_Var2 = "`"" + $Recipients_combobox.SelectedItem + "`""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_Recipients_combobox_TextChanged={
        if ($Recipients_combobox.Text.length -ge 1) {
            $Command_Var2 = "`"" + $Recipients_combobox.Text + "`""
            $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
            $Recipients_Button.Enabled = $True
        }
        else {
            $Recipients_Button.Enabled = $false
            $Command_Var2 = ""
        }
}
$handler_Recipients_combobox_SelectedIndexChanged={
    $Command_Var2 = "`"" + $Recipients_combobox.SelectedItem + "`""
    $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22

}
$handler_Recipients_Button_Click={
    $Mainframe.Cursor = [System.Windows.Forms.Cursors]::WaitCursor
    if ($Recipients_Info_Array.count -ge 1) {
        $Recipients_combobox.Items.Clear()
    }
    $Recipients_Info_Array = new-Object System.Collections.ArrayList
    $Recipients_Info_Command0 = "get-Recipient"
    $Recipients_Info_Command1 = " -id "
    $cmd_Recipients_Info = $Recipients_Info_Command0 + $Recipients_Info_Command1 + $Command_Var2
    iex $cmd_Recipients_Info | Tee-Object -variable output1 | foreach {$Recipients_Info_Array.Add($_.Primarysmtpaddress.Tostring())}

    if ($Recipients_Info_Array.Count -eq 0) {
        #$Recipients_combobox.Text=""
        #$ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        $Recipients_combobox.Text = $Recipients_Info_Array
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
        }
    if ($Recipients_Info_Array.Count -ge 2) {
        foreach ($Recipients in $Recipients_Info_Array) {
            $Recipients_combobox.Items.Add($Recipients)|Out-Null
            }
        $Recipients_combobox.Text = "Please select recipient (Drop Down)"
    }
    $Mainframe.Cursor = [System.Windows.Forms.Cursors]::Arrow
}
##########
## Line 2 Sender handling
##########
$handler_Sender_checkbox_CheckedChanged={
   
    if ($Sender_checkbox.Checked -eq $false){
        $Sender_combobox.Text = ""
        $Sender_combobox.Enabled = $false
        $Server_Button.Enabled = $false
        $Command_Var3 = ""
        $Command_Var4 = ""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        $Sender_combobox.Enabled = $true
        $Command_Var3 = " -Sender "
        $Command_Var4 = "`"" + $Sender_combobox.SelectedItem + "`""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_Sender_combobox_TextChanged={
        if ($Sender_combobox.Text.length -ge 1) {
            $Command_Var4 = "`"" + $Sender_combobox.Text + "`""
            $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
            $Sender_Button.Enabled = $True
            if ($Server_checkbox.Checked -eq $True) {
                $Server_Button.Enabled = $True
            }
        }
        else {
            $Sender_Button.Enabled = $false
            $Command_Var4 = ""
        }
}
$handler_Sender_combobox_SelectedIndexChanged={
    $Command_Var4 = "`"" + $Sender_combobox.SelectedItem + "`""
    $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22

}
$handler_Sender_button_Click={
   
    if ($Sender_Info_Array.count -ge 1) {
        $Sender_combobox.Items.Clear()
    }
    $Sender_Info_Array = New-Object System.Collections.ArrayList
    $Sender_Info_Command0 = "get-Recipient"
    $Sender_Info_Command1 = " -id "
    $cmd_Sender_Info = $Sender_Info_Command0 + $Sender_Info_Command1 + $Command_Var4
    iex $cmd_Sender_Info | Tee-Object -variable output2 | foreach {$Sender_Info_Array.Add($_.Primarysmtpaddress.Tostring())}

    if ($Sender_Info_Array.Count -eq 0) {}
    else {
        $Sender_combobox.Text = $Sender_Info_Array
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
        }
    if ($Sender_Info_Array.Count -ge 2) {
        foreach ($Sender in $Sender_Info_Array) {
            $Sender_combobox.Items.Add($Sender)|Out-Null
            }
        $Sender_combobox.Text = "Please select Sender (Drop Down)"
    }
    if ($Server_checkbox.Checked -eq $True) {
                $Server_Button.Enabled = $True
    }
}
##########
## Line 3 Server handling
##########
$handler_Server_checkbox_CheckedChanged={
    if ($Server_checkbox.Checked -eq $false){
        $Server_richtextbox.Enabled = $false
        $Server_Button.Enabled = $false
        $Server_richtextbox.Text=""
        $Command_Var_Exchangeservers = 'Get-Exchangeserver | Where-Object {$_.IsHubTransportServer -eq "True"} | sort Name | '
        $Command_Var5 = ""
        $Command_Var6 = ""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        if ($Server_checkbox.Checked -eq $True -and $Sender_combobox.Text.Length -ge 1) {
                $Server_Button.Enabled = $True
        }
        $Command_Var_Exchangeservers = ""
        $Server_richtextbox.Enabled = $true
        $Command_Var5 = " -Server "
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_Server_richtextbox_TextChanged={
        $Command_Var6 = "`"" + $Server_richtextbox.Text + "`""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
}
$handler_Server_button_Click={
    $Server_Info_Array = New-Object System.Collections.ArrayList
    $Server_Info_Command0 = "get-Recipient"
    $Server_Info_Command1 = " -id "
    $cmd_Server_Info = $Server_Info_Command0 + $Server_Info_Command1 + $Command_Var4
    iex $cmd_Server_Info | Tee-Object -variable output3 | foreach {$Server_Info_Array.Add($_.Servername.Tostring())}

    if ($Server_Info_Array.Count -eq 0) {
    }
    else {
        $Server_richtextbox.Text = $Server_Info_Array
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
##########
## Line 4 EventID handling
##########
$handler_EventID_checkbox_CheckedChanged={
    if ($EventID_checkbox.Checked -eq $false){
        $EventID_combobox.Enabled = $false
        $Command_Var7 = ""
        $Command_Var8 = ""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        $EventID_combobox.Enabled = $true
        $Command_Var7 = " -EventID "
        $Command_Var8 = "`"" + $EventID_combobox.SelectedItem + "`""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_EventID_combobox_SelectedIndexChanged={
    $Command_Var8 = "`"" + $EventID_combobox.SelectedItem + "`""
    $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22

}
##########
## Line 5 MessageID handling
##########
$handler_MessageID_checkbox_CheckedChanged={
    if ($MessageID_checkbox.Checked -eq $false){
        $MessageID_richtextbox.Enabled = $false
        $MessageID_richtextbox.Text=""
        $Command_Var9 = ""
        $Command_Var10 = ""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        $MessageID_richtextbox.Enabled = $true
        $Command_Var9 = " -MessageID "
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_MessageID_richtextbox_TextChanged={       
        $Command_Var10 = "`"" + $MessageID_richtextbox.Text + "`""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
}
##########
## Row 1 Line 1 InternalMessageID handling
##########
$handler_InternalMessageID_checkbox_CheckedChanged={
    if ($InternalMessageID_checkbox.Checked -eq $false){
        $InternalMessageID_richtextbox.Enabled = $false
        $InternalMessageID_richtextbox.Text=""
        $Command_Var11 = ""
        $Command_Var12 = ""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        $InternalMessageID_richtextbox.Enabled = $true
        $Command_Var11 = " -InternalMessageID "
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_InternalMessageID_richtextbox_TextChanged={       
        $Command_Var12 = "`"" + $InternalMessageID_richtextbox.Text + "`""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
}
##########
## Row 1 Line 2 Subject handling
##########
$handler_Subject_checkbox_CheckedChanged={
    if ($Subject_checkbox.Checked -eq $false){
        $Subject_richtextbox.Enabled = $false
        $Subject_richtextbox.Text=""
        $Command_Var13 = ""
        $Command_Var14 = ""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        $Subject_richtextbox.Enabled = $true
        $Command_Var13 = " -MessageSubject "
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_Subject_richtextbox_TextChanged={       
        $Command_Var14 = "`"" + $Subject_richtextbox.Text + "`""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
}
##########
## Row 1 Line 3 Reference handling
##########
$handler_Reference_checkbox_CheckedChanged={
    if ($Reference_checkbox.Checked -eq $false){
        $Reference_richtextbox.Enabled = $false
        $Reference_richtextbox.Text=""
        $Command_Var15 = ""
        $Command_Var16 = ""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        $Reference_richtextbox.Enabled = $true
        $Command_Var15 = " -Referenz "
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_Reference_richtextbox_TextChanged={       
        $Command_Var16 = "`"" + $Reference_richtextbox.Text + "`""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
}
##########
## Row 1 Line 4 Start Timeframe handling
##########
$handler_Start_checkbox_CheckedChanged={
    if ($Start_checkbox.Checked -eq $false){
        $Start_datetimepicker.Enabled = $false
        $Command_Var17 = ""
        $Command_Var18 = ""
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
        $Start_datetimepicker.Enabled = $true
        $Command_Var17 = " -Start "
        $Command_Var18 = "`'" + $($Start_datetimepicker.Value.ToString()) + "`'"
        $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_Start_datetimepicker_ValueChanged={
    $Command_Var18 = "`'" + $($Start_datetimepicker.Value.ToString()) + "`'"
    $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
   

}
##########
## Row 1 Line 5 End Timeframe handling
##########
$handler_End_checkbox_CheckedChanged={
    if ($End_checkbox.Checked -eq $false){
      $End_datetimepicker.Enabled = $false
      $Command_Var19 = ""
      $Command_Var20 = ""
      $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
    else {
      $End_datetimepicker.Enabled = $true
      $Command_Var19 = " -End "
      $Command_Var20 = "`'" + $($End_datetimepicker.Value.ToString()) + "`'"
      $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_End_datetimepicker_ValueChanged=
{
   $Command_Var20 = "`'" + $($End_datetimepicker.Value.ToString()) + "`'"
   $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
}
##########
## Row 2 Line 7 Resultsize handling
##########
$handler_Resultsize_checkbox_CheckedChanged=
{    
   if ($Resultsize_checkbox.Checked -eq $false){
      $Command_Var21 = ""
      $Command_Var22 = ""
      $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
   else {
      $Resultsize_checkbox.Checked = $true   
      $Command_Var21 = " -Resultsize "
      $Command_Var22 = " Unlimited"
      $ShellCommandOutput_richtextbox.Text = $Command_Var0 + $Command_Var1 + $Command_Var2 + $Command_Var3 + $Command_Var4 + $Command_Var5 + $Command_Var6 + $Command_Var7 + $Command_Var8 + $Command_Var9 + $Command_Var10 + $Command_Var11 + $Command_Var12 + $Command_Var13 + $Command_Var14 + $Command_Var15 + $Command_Var16 + $Command_Var17+ $Command_Var18 + $Command_Var19 + $Command_Var20 + $Command_Var21 + $Command_Var22
    }
}
$handler_Save_button_Click={
    $Mainframe.Cursor = [System.Windows.Forms.Cursors]::WaitCursor
   
    $exFileName = new-object System.Windows.Forms.saveFileDialog
    $exFileName.DefaultExt = "txt"
    $exFileName.Filter = "csv file (*.txt)|*.txt"
    $exFileName.InitialDirectory = "c:\temp"
    $exFileName.ShowHelp = $true
    $exFileName.ShowDialog()
    if ($exFileName.FileName -ne ""){
        $logfile = new-object IO.StreamWriter($exFileName.FileName,$true)
        $logfile.WriteLine("Timestamp,EventId,Source,SourceContext,MessageId,MessageSubject,Sender,Recipients,InternalMessageId,ClientIp,ClientHostname,ServerIp,ServerHostname,ConnectorId,RecipientStatus,TotalBytes,RecipientCount,RelatedRecipientAddress,Reference,ReturnPath,Messageinfo")
        foreach($row in $dataGrid1.Rows){
            $logfile.WriteLine("`"" + $row[0].ToString() + "`"," + $row[1].ToString() + "," + $row[2].ToString() + "," + $row[3].ToString() + "," + $row[4].ToString() + "," + "`"" + $row[5].ToString() + "`"" + "," + $row[6].ToString() + "," + $row[7].ToString() + "," + $row[8].ToString() + "," + $row[9].ToString() + "," + $row[10].ToString() + "," + $row[11].ToString() + "," + $row[12].ToString() + "," + $row[13].ToString() + "," + $row[14].ToString() + "," + $row[15].ToString() + "," + $row[16].ToString() + "," + $row[17].ToString() + "," + $row[18].ToString() + "," + $row[19].ToString() + "," + $row[20].ToString())
        }
    }
    $logfile.Close()
    $Status_Bar.Text = "File is saved as: " + $($exFileName.FileName)
    $Mainframe.Cursor = [System.Windows.Forms.Cursors]::Arrow
}
##########
## Common event handling
##########

$handler_Recipients_combobox_MouseEnter={
$Recipients_tooltip.SetToolTip($Recipients_combobox, "Following inputformat is possible: `n`n Alias: xxx`n`n E-mail Address: x.y@z.com`n`n Wildcard match: *John, *John*`n")
}
$handler_Sender_combobox_MouseEnter={
$Sender_tooltip.SetToolTip($Sender_combobox, "Following inputformat is possible: `n`n Alias: xxx`n`n E-mail Address: x.y@z.com`n`n Wildcard match: *John, *John*`n")
}
$handler_Server_richtextbox_MouseEnter={
$Server_tooltip.SetToolTip($Server_richtextbox, "If Server field is enabled, searching over all HT Servers is disabled !`n `nFollowing inputformat is possible: `n`nServer: `"myserver`"`n`nInfo:`n`nServer from Sender doesn't work in our environment!")
}

$OnLoadForm_StateCorrection={$Mainframe.WindowState = $InitialFormWindowState}
#----------------------------------------------
#region Generated Form Code

##########
## MainGUI
##########
$Mainframe.BackgroundImageLayout = [System.Windows.Forms.ImageLayout]::Stretch
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 965
$System_Drawing_Size.Height = 665
$Mainframe.MaximumSize = $System_Drawing_Size
$Mainframe.BackColor = [System.Drawing.Color]::FromArgb(255,255,255,255)
$Mainframe.Icon = [System.Drawing.Icon]::ExtractAssociatedIcon("Exchange-SearchIcon.ico")
$Mainframe.Text = "Exchange Advanced Search GUI"
$Mainframe.MaximizeBox = $false
$Mainframe.Name = "MainGUI"
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 965
$System_Drawing_Size.Height = 645
$Mainframe.MinimumSize = $System_Drawing_Size
$Mainframe.BackgroundImage = [System.Drawing.Image]::FromFile("Exchange-SearchBG.png")
$Mainframe.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Mainframe.MinimizeBox = $true
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 965
$System_Drawing_Size.Height = 645
$Mainframe.ClientSize = $System_Drawing_Size
$Mainframe.add_Load($handler_Mainframe_Load)
###########
# Line 1 Main Label
###########
#
# Label
#
$MainGui_label1.TabIndex = 0
$MainGui_label1.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 490
$System_Drawing_Size.Height = 32
$MainGui_label1.Size = $System_Drawing_Size
$MainGui_label1.Text = "Message Tracking Parameters"
$MainGui_label1.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",20.25,0,3,1)
$MainGui_label1.ForeColor = [System.Drawing.Color]::FromArgb(255,58,110,165)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 12
$System_Drawing_Point.Y = 13
$MainGui_label1.Location = $System_Drawing_Point
$MainGui_label1.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$MainGui_label1.Name = "MainGui_Label1"
$Mainframe.Controls.Add($MainGui_label1)
###########
# Line 2 Main Label Description
###########
#
# Label
#
$MainGui_label2.TabIndex = 1
$MainGui_label2.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 620
$System_Drawing_Size.Height = 20
$MainGui_label2.Size = $System_Drawing_Size
$MainGui_label2.Text = "Select check boxes to include criteria in the message tracking search. Searches on all Hub-Transport Servers available."
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 12
$System_Drawing_Point.Y = 55
$MainGui_label2.Location = $System_Drawing_Point
$MainGui_label2.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$MainGui_label2.Name = "MainGui_label2"
$Mainframe.Controls.Add($MainGui_label2)
###########
# Line 3 Recipient definition
###########
#
# Label
#
$Recipients_label.TabIndex = 2
$Recipients_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$Recipients_label.Size = $System_Drawing_Size
$Recipients_label.Text = "Recipients"
$Recipients_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 15
$System_Drawing_Point.Y = 100
$Recipients_label.Location = $System_Drawing_Point
$Recipients_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Recipients_label.Name = "Recipients_label"
$Mainframe.Controls.Add($Recipients_label)
#
# Checkbox
#
$Recipients_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$Recipients_checkbox.Size = $System_Drawing_Size
$Recipients_checkbox.TabIndex = 3
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 115
$System_Drawing_Point.Y = 100
$Recipients_checkbox.Location = $System_Drawing_Point
$Recipients_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Recipients_checkbox.Name = "Recipients_checkbox"
$Recipients_checkbox.add_CheckedChanged($handler_Recipients_checkbox_CheckedChanged)
$Mainframe.Controls.Add($Recipients_checkbox)
#
# Richtextbox
#
$Recipients_combobox.Name = "Recipients_combobox"
$Recipients_combobox.MaxLength = 150
$Recipients_combobox.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$Recipients_combobox.Text = ""
$Recipients_combobox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 140
$System_Drawing_Point.Y = 95
$Recipients_combobox.Location = $System_Drawing_Point
$Recipients_combobox.Enabled = $false
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 200
$System_Drawing_Size.Height = 21
$Recipients_combobox.Size = $System_Drawing_Size
$Recipients_combobox.TabIndex = 4
$Recipients_combobox.add_TextChanged($handler_Recipients_combobox_TextChanged)
$Recipients_combobox.add_SelectedIndexChanged($handler_Recipients_combobox_SelectedIndexChanged)
$Recipients_combobox.add_MouseEnter($handler_Recipients_combobox_MouseEnter)
$Mainframe.Controls.Add($Recipients_combobox)
#
# Button
#
$Recipients_Button.TabIndex = 5
$Recipients_Button.BackColor = [System.Drawing.Color]::FromArgb(255,212,208,200)
$Recipients_Button.Name = "Recipients_Button"
$Recipients_Button.Text = "Resolve Recipient"
$Recipients_Button.Enabled = $false
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 130
$System_Drawing_Size.Height = 23
$Recipients_Button.Size = $System_Drawing_Size
$Recipients_Button.UseVisualStyleBackColor = $false
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 350
$System_Drawing_Point.Y = 95
$Recipients_Button.Location = $System_Drawing_Point
$Recipients_Button.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Recipients_Button.add_Click($handler_Recipients_Button_Click)
$Mainframe.Controls.Add($Recipients_Button)
###########
# Line 4 Sender definition
###########
#
# Label
#
$Sender_label.TabIndex = 6
$Sender_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$Sender_label.Size = $System_Drawing_Size
$Sender_label.Text = "Sender"
$Sender_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 15
$System_Drawing_Point.Y = 130
$Sender_label.Location = $System_Drawing_Point
$Sender_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Sender_label.Name = "Sender_label"
$Mainframe.Controls.Add($Sender_label)
#
# Checkbox
#
$Sender_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$Sender_checkbox.Size = $System_Drawing_Size
$Sender_checkbox.TabIndex = 7
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 115
$System_Drawing_Point.Y = 130
$Sender_checkbox.Location = $System_Drawing_Point
$Sender_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Sender_checkbox.Name = "Sender_checkbox"
$Sender_checkbox.add_CheckedChanged($handler_Sender_checkbox_CheckedChanged)
$Mainframe.Controls.Add($Sender_checkbox)
#
# Richtextbox
#
$Sender_combobox.Name = "Sender_combobox"
$Sender_combobox.MaxLength = 150
$Sender_combobox.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$Sender_combobox.Text = ""
$Sender_combobox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 140
$System_Drawing_Point.Y = 126
$Sender_combobox.Location = $System_Drawing_Point
$Sender_combobox.Enabled = $false
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 200
$System_Drawing_Size.Height = 21
$Sender_combobox.Size = $System_Drawing_Size
$Sender_combobox.TabIndex = 8
$Sender_combobox.add_TextChanged($handler_Sender_combobox_TextChanged)
$Sender_combobox.add_SelectedIndexChanged($handler_Sender_combobox_SelectedIndexChanged)
$Sender_combobox.add_MouseEnter($handler_Sender_combobox_MouseEnter)
$Mainframe.Controls.Add($Sender_combobox)
#
# Button
#
$Sender_button.TabIndex = 9
$Sender_button.BackColor = [System.Drawing.Color]::FromArgb(255,212,208,200)
$Sender_button.Name = "Sender_button"
$Sender_button.Enabled = $false
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 130
$System_Drawing_Size.Height = 23
$Sender_button.Size = $System_Drawing_Size
$Sender_button.UseVisualStyleBackColor = $false
$Sender_button.Text = "Resolve Sender"
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 350
$System_Drawing_Point.Y = 125
$Sender_button.Location = $System_Drawing_Point
$Sender_button.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Sender_button.add_Click($handler_Sender_button_Click)
$Mainframe.Controls.Add($Sender_button)
###########
# Line 5 Server definition
###########
#
# Label
#
$Server_label.TabIndex = 10
$Server_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$Server_label.Size = $System_Drawing_Size
$Server_label.Text = "Server"
$Server_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 15
$System_Drawing_Point.Y = 160
$Server_label.Location = $System_Drawing_Point
$Server_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Server_label.Name = "Server_label"
$Mainframe.Controls.Add($Server_label)
#
# Checkbox
#
$Server_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$Server_checkbox.Size = $System_Drawing_Size
$Server_checkbox.TabIndex = 11
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 115
$System_Drawing_Point.Y = 160
$Server_checkbox.Location = $System_Drawing_Point
$Server_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Server_checkbox.Name = "Server_checkbox"
$Server_checkbox.add_CheckedChanged($handler_Server_checkbox_CheckedChanged)
$Mainframe.Controls.Add($Server_checkbox)
#
# Richtextbox
#
$Server_richtextbox.Name = "Server_richtextbox"
$Server_richtextbox.DetectUrls = $False
$Server_richtextbox.MaxLength = 150
$Server_richtextbox.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$Server_richtextbox.Text = ""
$Server_richtextbox.Multiline = $false
$Server_richtextbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 140
$System_Drawing_Point.Y = 155
$Server_richtextbox.Location = $System_Drawing_Point
$Server_richtextbox.Enabled = $False
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 200
$System_Drawing_Size.Height = 23
$Server_richtextbox.Size = $System_Drawing_Size
$Server_richtextbox.TabIndex = 15
$Server_richtextbox.add_TextChanged($handler_Server_richtextbox_TextChanged)
$Server_richtextbox.add_MouseEnter($handler_Server_richtextbox_MouseEnter)
$Mainframe.Controls.Add($Server_richtextbox)
#
# Button
#
$Server_button.TabIndex = 13
$Server_button.BackColor = [System.Drawing.Color]::FromArgb(255,212,208,200)
$Server_button.Name = "Server_button"
$Server_button.Enabled = $false
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 130
$System_Drawing_Size.Height = 23
$Server_button.Size = $System_Drawing_Size
$Server_button.UseVisualStyleBackColor = $false
$Server_button.Text = "Server from Sender"
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 350
$System_Drawing_Point.Y = 155
$Server_button.Location = $System_Drawing_Point
$Server_button.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Server_button.add_Click($handler_Server_button_Click)
$Mainframe.Controls.Add($Server_button)
###########
# Line 6 EventID definition
###########
#
# Label
#
$EventID_label.TabIndex = 14
$EventID_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$EventID_label.Size = $System_Drawing_Size
$EventID_label.Text = "EventID"
$EventID_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 15
$System_Drawing_Point.Y = 190
$EventID_label.Location = $System_Drawing_Point
$EventID_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$EventID_label.Name = "EventID_label"
$Mainframe.Controls.Add($EventID_label)
#
# Checkbox
#
$EventID_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$EventID_checkbox.Size = $System_Drawing_Size
$EventID_checkbox.TabIndex = 16
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 115
$System_Drawing_Point.Y = 190
$EventID_checkbox.Location = $System_Drawing_Point
$EventID_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$EventID_checkbox.Name = "EventID_checkbox"
$EventID_checkbox.add_CheckedChanged($handler_EventID_checkbox_CheckedChanged)
$Mainframe.Controls.Add($EventID_checkbox)
#
# Combobox
#
$EventID_combobox.FormattingEnabled = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 340
$System_Drawing_Size.Height = 21
$EventID_combobox.Size = $System_Drawing_Size
$EventID_combobox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$EventID_combobox.Name = "EventID_combobox"
$EventID_combobox.Items.Add("Receive")|Out-Null
$EventID_combobox.Items.Add("Send")|Out-Null
$EventID_combobox.Items.Add("Fail")|Out-Null
$EventID_combobox.Items.Add("DSN")|Out-Null
$EventID_combobox.Items.Add("BadMail")|Out-Null
$EventID_combobox.Items.Add("Resolve")|Out-Null
$EventID_combobox.Items.Add("Expand")|Out-Null
$EventID_combobox.Items.Add("Redirect")|Out-Null
$EventID_combobox.Items.Add("Transfer")|Out-Null
$EventID_combobox.Items.Add("Submit")|Out-Null
$EventID_combobox.Items.Add("Defer Deliver")|Out-Null
$EventID_combobox.Items.Add("PoisonMessage")|Out-Null
$EventID_combobox.Text = "RECEIVE"
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 140
$System_Drawing_Point.Y = 186
$EventID_combobox.Location = $System_Drawing_Point
$EventID_combobox.Enabled = $false
$EventID_combobox.TabIndex = 16
$EventID_combobox.add_SelectedIndexChanged($handler_EventID_combobox_SelectedIndexChanged)
$Mainframe.Controls.Add($EventID_combobox)
###########
# Line 7 MessageID definition
###########
#
# Label
#
$MessageID_label.TabIndex = 20
$MessageID_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$MessageID_label.Size = $System_Drawing_Size
$MessageID_label.Text = "MessageID"
$MessageID_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 15
$System_Drawing_Point.Y = 220
$MessageID_label.Location = $System_Drawing_Point
$MessageID_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$MessageID_label.Name = "MessageID_label"
$Mainframe.Controls.Add($MessageID_label)
#
# Checkbox
#
$MessageID_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$MessageID_checkbox.Size = $System_Drawing_Size
$MessageID_checkbox.TabIndex = 18
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 115
$System_Drawing_Point.Y = 220
$MessageID_checkbox.Location = $System_Drawing_Point
$MessageID_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$MessageID_checkbox.Name = "MessageID_checkbox"
$MessageID_checkbox.add_CheckedChanged($handler_MessageID_checkbox_CheckedChanged)
$Mainframe.Controls.Add($MessageID_checkbox)
#
# Richtextbox
#
$MessageID_richtextbox.Name = "MessageID_richtextbox"
$MessageID_richtextbox.DetectUrls = $False
$MessageID_richtextbox.MaxLength = 150
$MessageID_richtextbox.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$MessageID_richtextbox.Text = ""
$MessageID_richtextbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 140
$System_Drawing_Point.Y = 215
$MessageID_richtextbox.Location = $System_Drawing_Point
$MessageID_richtextbox.Enabled = $False
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 340
$System_Drawing_Size.Height = 23
$MessageID_richtextbox.Size = $System_Drawing_Size
$MessageID_richtextbox.TabIndex = 19
$MessageID_richtextbox.add_TextChanged($handler_MessageID_richtextbox_TextChanged)
$Mainframe.Controls.Add($MessageID_richtextbox)
###########
# Row 1 Line 1 InternalMessageID definition
###########
#
# Label
#
$InternalMessageID_label.TabIndex = 20
$InternalMessageID_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$InternalMessageID_label.Size = $System_Drawing_Size
$InternalMessageID_label.Text = "InternalMessageID"
$InternalMessageID_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 500
$System_Drawing_Point.Y = 100
$InternalMessageID_label.Location = $System_Drawing_Point
$InternalMessageID_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$InternalMessageID_label.Name = "InternalMessageID_label"
$Mainframe.Controls.Add($InternalMessageID_label)
#
# Checkbox
#
$InternalMessageID_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$InternalMessageID_checkbox.Size = $System_Drawing_Size
$InternalMessageID_checkbox.TabIndex = 21
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 600
$System_Drawing_Point.Y = 100
$InternalMessageID_checkbox.Location = $System_Drawing_Point
$InternalMessageID_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$InternalMessageID_checkbox.Name = "InternalMessageID_checkbox"
$InternalMessageID_checkbox.add_CheckedChanged($handler_InternalMessageID_checkbox_CheckedChanged)
$Mainframe.Controls.Add($InternalMessageID_checkbox)
#
# Richtextbox
#
$InternalMessageID_richtextbox.Name = "InternalMessageID_richtextbox"
$InternalMessageID_richtextbox.DetectUrls = $False
$InternalMessageID_richtextbox.MaxLength = 150
$InternalMessageID_richtextbox.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$InternalMessageID_richtextbox.Text = ""
$InternalMessageID_richtextbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 625
$System_Drawing_Point.Y = 95
$InternalMessageID_richtextbox.Location = $System_Drawing_Point
$InternalMessageID_richtextbox.Enabled = $False
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 320
$System_Drawing_Size.Height = 23
$InternalMessageID_richtextbox.Size = $System_Drawing_Size
$InternalMessageID_richtextbox.TabIndex = 24
$InternalMessageID_richtextbox.add_TextChanged($handler_InternalMessageID_richtextbox_TextChanged)
$Mainframe.Controls.Add($InternalMessageID_richtextbox)
###########
# Row 1 Line 2 Subject definition
###########
#
# Label
#
$Subject_label.TabIndex = 23
$Subject_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$Subject_label.Size = $System_Drawing_Size
$Subject_label.Text = "MessageSubject"
$Subject_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 500
$System_Drawing_Point.Y = 130
$Subject_label.Location = $System_Drawing_Point
$Subject_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Subject_label.Name = "Subject_label"
$Mainframe.Controls.Add($Subject_label)
#
# Checkbox
#
$Subject_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$Subject_checkbox.Size = $System_Drawing_Size
$Subject_checkbox.TabIndex = 24
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 600
$System_Drawing_Point.Y = 130
$Subject_checkbox.Location = $System_Drawing_Point
$Subject_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Subject_checkbox.Name = "Subject_checkbox"
$Subject_checkbox.add_CheckedChanged($handler_Subject_checkbox_CheckedChanged)
$Mainframe.Controls.Add($Subject_checkbox)
#
# Richtextbox
#
$Subject_richtextbox.Name = "Subject_richtextbox"
$Subject_richtextbox.DetectUrls = $False
$Subject_richtextbox.MaxLength = 150
$Subject_richtextbox.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$Subject_richtextbox.Text = ""
$Subject_richtextbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 625
$System_Drawing_Point.Y = 125
$Subject_richtextbox.Location = $System_Drawing_Point
$Subject_richtextbox.Enabled = $False
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 320
$System_Drawing_Size.Height = 23
$Subject_richtextbox.Size = $System_Drawing_Size
$Subject_richtextbox.TabIndex = 25
$Subject_richtextbox.add_TextChanged($handler_Subject_richtextbox_TextChanged)
$Mainframe.Controls.Add($Subject_richtextbox)
###########
# Row 1 Line 3 Reference definition
###########
#
# Label
#
$Reference_label.TabIndex = 26
$Reference_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$Reference_label.Size = $System_Drawing_Size
$Reference_label.Text = "Reference"
$Reference_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 500
$System_Drawing_Point.Y = 160
$Reference_label.Location = $System_Drawing_Point
$Reference_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Reference_label.Name = "Reference_label"
$Mainframe.Controls.Add($Reference_label)
#
# Checkbox
#
$Reference_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$Reference_checkbox.Size = $System_Drawing_Size
$Reference_checkbox.TabIndex = 31
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 600
$System_Drawing_Point.Y = 160
$Reference_checkbox.Location = $System_Drawing_Point
$Reference_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Reference_checkbox.Name = "Reference_checkbox"
$Reference_checkbox.add_CheckedChanged($handler_Reference_checkbox_CheckedChanged)
$Mainframe.Controls.Add($Reference_checkbox)
#
# Richtextbox
#
$Reference_richtextbox.Name = "Reference_richtextbox"
$Reference_richtextbox.DetectUrls = $False
$Reference_richtextbox.MaxLength = 150
$Reference_richtextbox.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$Reference_richtextbox.Text = ""
$Reference_richtextbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 625
$System_Drawing_Point.Y = 155
$Reference_richtextbox.Location = $System_Drawing_Point
$Reference_richtextbox.Enabled = $False
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 320
$System_Drawing_Size.Height = 23
$Reference_richtextbox.Size = $System_Drawing_Size
$Reference_richtextbox.TabIndex = 28
$Reference_richtextbox.add_TextChanged($handler_Reference_richtextbox_TextChanged)
$Mainframe.Controls.Add($Reference_richtextbox)
###########
# Row 1 Line 4 Start Time definition
###########
#
# Label
#
$Start_label.TabIndex = 29
$Start_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$Start_label.Size = $System_Drawing_Size
$Start_label.Text = "Start"
$Start_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 500
$System_Drawing_Point.Y = 190
$Start_label.Location = $System_Drawing_Point
$Start_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Start_label.Name = "Start_label"
$Mainframe.Controls.Add($Start_label)
#
# Checkbox
#
$Start_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$Start_checkbox.Size = $System_Drawing_Size
$Start_checkbox.TabIndex = 27
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 600
$System_Drawing_Point.Y = 190
$Start_checkbox.Location = $System_Drawing_Point
$Start_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Start_checkbox.Name = "Start_checkbox"
$Start_checkbox.add_CheckedChanged($handler_Start_checkbox_CheckedChanged)
$Mainframe.Controls.Add($Start_checkbox)
#
# DateTimePicker
#
$Start_datetimepicker.Enabled = $False
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 320
$System_Drawing_Size.Height = 20
$Start_datetimepicker.Size = $System_Drawing_Size
$Start_datetimepicker.TabIndex = 31
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 625
$System_Drawing_Point.Y = 186
$Start_datetimepicker.Location = $System_Drawing_Point
$Start_datetimepicker.ShowUpDown = $true
$Start_datetimepicker.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Start_datetimepicker.Name = "Start_datetimepicker"
$Start_datetimepicker.Format = [System.Windows.Forms.DateTimePickerFormat]::Custom
$Start_datetimepicker.CustomFormat = "dddd, dd. MMMM   yyyy  HH:mm:ss"
$Start_datetimepicker.add_ValueChanged($handler_Start_datetimepicker_ValueChanged)
$Mainframe.Controls.Add($Start_datetimepicker)
###########
# Row 1 Line 5 End Time definition
###########
#
# Label
#
$End_label.TabIndex = 32
$End_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 100
$System_Drawing_Size.Height = 13
$End_label.Size = $System_Drawing_Size
$End_label.Text = "End"
$End_label.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",8.25,0,3,1)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 500
$System_Drawing_Point.Y = 220
$End_label.Location = $System_Drawing_Point
$End_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$End_label.Name = "End_label"
$Mainframe.Controls.Add($End_label)
#
# Checkbox
#
$End_checkbox.UseVisualStyleBackColor = $True
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 13
$System_Drawing_Size.Height = 13
$End_checkbox.Size = $System_Drawing_Size
$End_checkbox.TabIndex = 33
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 600
$System_Drawing_Point.Y = 220
$End_checkbox.Location = $System_Drawing_Point
$End_checkbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$End_checkbox.Name = "End_checkbox"
$End_checkbox.add_CheckedChanged($handler_End_checkbox_CheckedChanged)
$Mainframe.Controls.Add($End_checkbox)
#
# DateTimePicker
#
$End_datetimepicker.Enabled = $false
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 320
$System_Drawing_Size.Height = 20
$End_datetimepicker.Size = $System_Drawing_Size
$End_datetimepicker.TabIndex = 34
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 625
$System_Drawing_Point.Y = 216
$End_datetimepicker.Location = $System_Drawing_Point
$End_datetimepicker.ShowUpDown = $true
$End_datetimepicker.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$End_datetimepicker.Name = "End_datetimepicker"
$End_datetimepicker.Format = [System.Windows.Forms.DateTimePickerFormat]::Custom
$End_datetimepicker.CustomFormat = "dddd, dd. MMMM   yyyy  HH:mm:ss"
$End_datetimepicker.add_ValueChanged($handler_End_datetimepicker_ValueChanged)
$Mainframe.Controls.Add($End_datetimepicker)
###########
# Line 8 Shellcommand definition
###########
#
# Label
#
$Shellcommand_label.TabIndex = 35
$Shellcommand_label.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 218
$System_Drawing_Size.Height = 13
$Shellcommand_label.Size = $System_Drawing_Size
$Shellcommand_label.Text = "Exchange Management Shell command"
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 12
$System_Drawing_Point.Y = 253
$Shellcommand_label.Location = $System_Drawing_Point
$Shellcommand_label.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Shellcommand_label.Name = "Shellcommand_label"
$Mainframe.Controls.Add($Shellcommand_label)
###########
# Line 9 Shellcommand Output definition
###########
#
# Richtextbox
#
$ShellCommandOutput_richtextbox.Name = "ShellCommandOutput_richtextbox"
$ShellCommandOutput_richtextbox.ReadOnly = $True
$ShellCommandOutput_richtextbox.Text = ""
$ShellCommandOutput_richtextbox.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 12
$System_Drawing_Point.Y = 275
$ShellCommandOutput_richtextbox.Location = $System_Drawing_Point
$ShellCommandOutput_richtextbox.BackColor = [System.Drawing.Color]::FromArgb(255,212,208,200)
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 933
$System_Drawing_Size.Height = 50
$ShellCommandOutput_richtextbox.Size = $System_Drawing_Size
$ShellCommandOutput_richtextbox.TabIndex = 36
$Mainframe.Controls.Add($ShellCommandOutput_richtextbox)
###########
# Line 10 SearchButton definition
###########
#
# Button
#
$Search_button.TabIndex = 37
$Search_button.BackColor = [System.Drawing.Color]::FromArgb(255,212,208,200)
$Search_button.Name = "Search_button"
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 130
$System_Drawing_Size.Height = 23
$Search_button.Size = $System_Drawing_Size
$Search_button.UseVisualStyleBackColor = $True
$Search_button.Text = "Search"
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 12
$System_Drawing_Point.Y = 340
$Search_button.Location = $System_Drawing_Point
$Search_button.DataBindings.DefaultDataSourceUpdateMode = [System.Windows.Forms.DataSourceUpdateMode]::OnValidation
$Search_button.add_Click($handler_Search_button_Click)
$Mainframe.Controls.Add($Search_button)
###########
# Line 10 Append Logfile definition
###########
#
# Checkbox
#
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 109
$System_Drawing_Size.Height = 20
$Search_checkbox.Size = $System_Drawing_Size
$Search_checkbox.TextAlign = 32
$Search_checkbox.Text = "Append Output"
$Search_checkbox.Name = "Search_checkbox"
$Search_checkbox.UseVisualStyleBackColor = $False
$Search_checkbox.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 160
$System_Drawing_Point.Y = 340
$Search_checkbox.Location = $System_Drawing_Point
$Search_checkbox.DataBindings.DefaultDataSourceUpdateMode = 0
$Search_checkbox.TabIndex = 38
$Mainframe.Controls.Add($Search_checkbox)
###########
# Line 10 Resultsize definition
###########
#
# Checkbox
#
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 130
$System_Drawing_Size.Height = 20
$Resultsize_checkbox.Size = $System_Drawing_Size
$Resultsize_checkbox.Text = "Resultsize Unlimited"
$Resultsize_checkbox.Name = "Resultsize_checkbox"
$Resultsize_checkbox.UseVisualStyleBackColor = $False
$Resultsize_checkbox.BackColor = [System.Drawing.Color]::FromArgb(0,255,255,255)
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 280
$System_Drawing_Point.Y = 340
$Resultsize_checkbox.Location = $System_Drawing_Point
$Resultsize_checkbox.DataBindings.DefaultDataSourceUpdateMode = 0
$Resultsize_checkbox.TabIndex = 40
$Resultsize_checkbox.add_CheckedChanged($handler_Resultsize_checkbox_CheckedChanged)
$Mainframe.Controls.Add($Resultsize_checkbox)
###########
# Line 10 Save Output Button
###########
#
# Button
#
$Save_output.TabIndex = 41
$Save_output.BackColor = [System.Drawing.Color]::FromArgb(255,212,208,200)
$Save_output.Name = "Save_output"
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 75
$System_Drawing_Size.Height = 23
$Save_output.Size = $System_Drawing_Size
$Save_output.UseVisualStyleBackColor = $True
$Save_output.Text = "Save Output"
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 869
$System_Drawing_Point.Y = 338
$Save_output.Location = $System_Drawing_Point
$Save_output.Enabled = $false
$Save_output.DataBindings.DefaultDataSourceUpdateMode = 0
$Save_output.add_Click($handler_Save_button_Click)
$Mainframe.Controls.Add($Save_output)

###########
# Line 11 Datagrid definition
###########
# Declare Table
$dataGrid1 = New-Object System.Data.DataTable
$Dataview = New-Object System.Data.DataView($dataGrid1)
$Dataview.allowEdit = $False
$Dataview.allowDelete = $false
# Add DataGrid View
$dgDataGrid = new-object System.windows.forms.DataGridView
$dgDataGrid.Location = new-object System.Drawing.Size(12,385)
$dgDataGrid.size = new-object System.Drawing.Size(935,220)
$dgDataGrid.AllowSorting = $True
$dgDataGrid.SelectionMode = 'FullRowSelect'
#$dgDataGrid.Visible = $false
#$dgDataGrid.autosize = $True
#$dgDataGrid.AutoSizeColumnsMode = "AllCells"
$dgDataGrid.DataSource = $Dataview

$dataGrid1.Columns.Add('Timestamp') | Out-Null
$dataGrid1.Columns.Add('EventId') | Out-Null
$dataGrid1.Columns.Add('Source') | out-null
$dataGrid1.Columns.Add('SourceContext') | Out-Null
$dataGrid1.Columns.Add('MessageId') | Out-Null
$dataGrid1.Columns.Add('MessageSubject') | Out-Null
$dataGrid1.Columns.Add('Sender') | Out-Null
$dataGrid1.Columns.Add('Recipient') | Out-Null
$dataGrid1.Columns.Add('InternalMessageId') | Out-Null
$dataGrid1.Columns.Add('ClientIp') | Out-Null
$dataGrid1.Columns.Add('ClientHostname') | Out-Null
$dataGrid1.Columns.Add('ServerIp') | Out-Null
$dataGrid1.Columns.Add('ServerHostname') | Out-Null
$dataGrid1.Columns.Add('ConnectorId') | Out-Null
$dataGrid1.Columns.Add('RecipientStatus') | Out-Null
$dataGrid1.Columns.Add('TotalBytes') | Out-Null
$dataGrid1.Columns.Add('RecipientCount') | Out-Null
$dataGrid1.Columns.Add('RelatedRecipientAddress') | Out-Null
$dataGrid1.Columns.Add('Reference') | Out-Null
$dataGrid1.Columns.Add('ReturnPath') | Out-Null
$dataGrid1.Columns.Add('Messageinfo') | Out-Null
$Mainframe.Controls.Add($dgDataGrid)

$Recipients_tooltip.AutoPopDelay = 5000
$Recipients_tooltip.ToolTipTitle = "Tip:"
$Recipients_tooltip.InitialDelay = 100
$Recipients_tooltip.IsBalloon = $True
$Recipients_tooltip.ReshowDelay = 100
$Recipients_tooltip.ToolTipIcon = [System.Windows.Forms.ToolTipIcon]::Info
$Recipients_tooltip.add_Draw($handler_Recipients_combobox_MouseEnter)

$Sender_tooltip.AutoPopDelay = 5000
$Render_tooltip.ToolTipTitle = "Tip:"
$Sender_tooltip.InitialDelay = 100
$Sender_tooltip.IsBalloon = $True
$Sender_tooltip.ReshowDelay = 100
$Sender_tooltip.ToolTipIcon = [System.Windows.Forms.ToolTipIcon]::Info
$Sender_tooltip.add_Draw($handler_Sender_combobox_MouseEnter)

$Server_tooltip.AutoPopDelay = 5000
$Server_tooltip.ToolTipTitle = "Tip:"
$Server_tooltip.InitialDelay = 100
$Server_tooltip.IsBalloon = $True
$Server_tooltip.ReshowDelay = 100
$Server_tooltip.ToolTipIcon = [System.Windows.Forms.ToolTipIcon]::Info
$Server_tooltip.add_Draw($handler_Server_combobox_MouseEnter)

###########
# Line 12 Status Bar
###########

$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 957
$System_Drawing_Size.Height = 22
$Status_Bar.Size = $System_Drawing_Size
$Status_Bar.TabIndex = 42
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 0
$System_Drawing_Point.Y = 596
$Status_Bar.Location = $System_Drawing_Point
$Status_Bar.DataBindings.DefaultDataSourceUpdateMode = 0
$Status_Bar.Name = "Status_Bar"
$Mainframe.Controls.Add($Status_Bar)


#endregion Generated Form Code

#Save the initial state of the form
$InitialFormWindowState = $Mainframe.WindowState
#Init the OnLoad event to correct the initial state of the form
$Mainframe.add_Load($OnLoadForm_StateCorrection)
#Show the Form
$Mainframe.ShowDialog()| Out-Null

} #End Function

#Call OnApplicationLoad
if(OnApplicationLoad -eq $true)
{#Call the Function
 GenerateForm
 OnApplicationExit #Perform cleanup
}

####################################################################
Have fun! Maeffy

Comments

  1. Great Script...have been using this for a while.
    Unfortunately since the last Exchange Rollup or 2 this has not been working correctly for us.
    Unable to resolve any Sender/recipients. When you manually enter a email address to either...it searches and just starts returning anything it finds.

    Thanks
    Urlryn

    ReplyDelete
    Replies
    1. What Exchange Version and Rollup do you use ?

      Delete

Post a Comment

Popular posts from this blog

Exchange 2007 / Exchange 2010: Daily or Hourly Messagestatistc and Warning

Re-Blog Exchange 2007 Powershell remoting solution

Out of Office Admin Tool