MS Release Prüfung Volume voll

This commit is contained in:
2023-05-12 14:10:22 +02:00
parent 5e51e9e9f3
commit 2b21650c53
8 changed files with 144 additions and 70 deletions

View File

@@ -4,4 +4,6 @@
Public CURRENToWMConnect As Object
Public CURRENT_ATTMT_COUNT As Integer
Public SUBJECT_PRAFIX As String = "EmailProfiler"
Public CURRENT_DRIVE_CHECK As String = ""
Public CURRENT_DRIVE_ISFULL As Boolean = False
End Module

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("3.6.3.0")>
<Assembly: AssemblyFileVersion("3.6.3.0")>
<Assembly: AssemblyVersion("3.6.6.0")>
<Assembly: AssemblyFileVersion("3.6.6.0")>

View File

@@ -122,7 +122,7 @@ Public Class clsWorkEmail
ElseIf MyEmailMessage.Subject.Contains("[ADDI]") Then
Else
Logger.Info("CommonEmail-Process-Sniffer")
Logger.Debug("CommonEmail-Process-Sniffer")
If COMMON_EMAIL_IN() = True Then
INSERT_HISTORY_MSSQL()
If CURRENT_ATTMT_COUNT = 0 Then
@@ -283,6 +283,37 @@ Public Class clsWorkEmail
Return False
End Try
End Function
Dim DoubleBytes As Double
Default Public Property FormatBytes(ByVal BytesCaller As ULong) As String
Get
Try
Select Case BytesCaller
Case Is >= 1099511627776
DoubleBytes = CDbl(BytesCaller / 1099511627776) 'TB
Return FormatNumber(DoubleBytes, 2) & " TB"
Case 1073741824 To 1099511627775
DoubleBytes = CDbl(BytesCaller / 1073741824) 'GB
Return FormatNumber(DoubleBytes, 2) & " GB"
Case 1048576 To 1073741823
DoubleBytes = CDbl(BytesCaller / 1048576) 'MB
Return FormatNumber(DoubleBytes, 2) & " MB"
Case 1024 To 1048575
DoubleBytes = CDbl(BytesCaller / 1024) 'KB
Return FormatNumber(DoubleBytes, 2) & " KB"
Case 0 To 1023
DoubleBytes = BytesCaller ' bytes
Return FormatNumber(DoubleBytes, 2) & " bytes"
Case Else
Return ""
End Select
Catch
Return ""
End Try
End Get
Set(value As String)
End Set
End Property
Function COMMON_EMAIL_IN() As Boolean
Try
@@ -316,9 +347,53 @@ Public Class clsWorkEmail
WM_OBJEKTTYPE = oDataRow("WM_OBJEKTTYPE")
WM_IDX_BODY_TEXT = oDataRow("WM_IDX_BODY_TEXT")
WM_IDX_BODY_SUBSTR_LENGTH = oDataRow("WM_IDX_BODY_SUBSTR_LENGTH")
Dim oPathOriginal As String
Try
oPathOriginal = oDataRow("PATH_ORIGINAL")
Catch ex As Exception
oPathOriginal = ""
End Try
Dim oExtractMainPath As String = oDataRow("PATH_EMAIL_TEMP")
Try
Dim oSplit As String()
Dim oStorage As String
Try
oSplit = oExtractMainPath.Split("\")
If oSplit.Length > 1 Then
oStorage = oSplit(0)
Dim oCheckdvr As New DriveInfo(oStorage)
If CURRENT_DRIVE_CHECK <> oStorage Then
CURRENT_DRIVE_CHECK = oStorage
End If
End If
Catch ex As Exception
Logger.Warn($"Unexpected Error in Extracting Storage from [{oExtractMainPath}]: {ex.Message}")
End Try
Dim dvr As New DriveInfo(CURRENT_DRIVE_CHECK)
If dvr.IsReady = True Then
Dim oFreeSpace = dvr.TotalFreeSpace
Dim oresult = FormatBytes(oFreeSpace)
If oresult.EndsWith("MB") Then
Dim oRemainingMB As Integer = oresult.Replace(" MB", "")
If oRemainingMB < 150 Then
Logger.Warn($"ATTENTION: THE REMAINING SPACE FOR DRIVE [{dvr.Name}] IS LESS THEN 150 MB. STOPPING EXTRACTION")
CURRENT_DRIVE_ISFULL = True
Return False
End If
ElseIf oresult.EndsWith("GB") Or oresult.EndsWith("TB") Then
If CURRENT_DRIVE_ISFULL = True Then
CURRENT_DRIVE_ISFULL = False
Logger.Warn($"REMAINING SPACE OF [{dvr.Name}] IS NOW {oresult} - SO RESETTING CURRENT_DRIVE_ISFULL")
End If
End If
End If
Catch ex As Exception
Logger.Warn($"Unexpected Error in Checking RemainingTotalFreeSpace for Storage [{oExtractMainPath}]: {ex.Message}")
End Try
If COPY2HDD(oDataRow("COPY_2_HDD"), oDataRow("PATH_ORIGINAL"), oDataRow("PATH_EMAIL_ERRORS"), True) = True Then
If EXTRACT_ATTACHMENTS(oDataRow("PATH_EMAIL_TEMP"), oDataRow("PATH_EMAIL_ERRORS")) = True Then
If EXTRACT_ATTACHMENTS(oExtractMainPath, oDataRow("PATH_EMAIL_ERRORS")) = True Then
Return True
Else
@@ -462,7 +537,8 @@ Public Class clsWorkEmail
Return True
End If
End If
Else
Return True
End If
Catch ex As Exception
Logger.Error(ex)
@@ -698,13 +774,13 @@ Public Class clsWorkEmail
'oAttachment.Save(oAttachmentFileString)
Dim oFileInfo As New FileInfo(oAttachmentFileString)
Dim oFileLenth As Long = oFileInfo.Length
If oFileLenth > 0 Then
If oFileLenth > 2 Then
Logger.Info(String.Format("Attachment saved to [{0}]", oAttachmentFileString))
INSERT_HISTORY_FB(CURRENT_MAIL_MESSAGE_ID, mime.SafeFileName)
INSERT_HISTORY_ATTMT_MSSQL(CURRENT_MAIL_MESSAGE_ID, mime.SafeFileName)
oAttachmentCount += 1
Else
Logger.Warn($"##!! oFileLenth for AttachmentObjects is 0 !!##")
Logger.Warn($"##!! oFileLenth for AttachmentObjects is <2 !!##")
Try
File.Delete(oAttachmentFileString)
Catch ex As Exception