diff --git a/App/DigitalData.EMLProfiler/DigitalData.EMLProfiler.vbproj b/App/DigitalData.EMLProfiler/DigitalData.EMLProfiler.vbproj
index 187fb88..b25eda1 100644
--- a/App/DigitalData.EMLProfiler/DigitalData.EMLProfiler.vbproj
+++ b/App/DigitalData.EMLProfiler/DigitalData.EMLProfiler.vbproj
@@ -50,6 +50,9 @@
False
..\..\..\DDMonorepo\Modules.Database\bin\Debug\DigitalData.Modules.Database.dll
+
+ ..\..\..\DDMonorepo\Modules.Filesystem\bin\Debug\DigitalData.Modules.Filesystem.dll
+
..\..\..\DDMonorepo\Modules.Logging\bin\Debug\DigitalData.Modules.Logging.dll
diff --git a/App/DigitalData.EMLProfiler/clsWorkEmail.vb b/App/DigitalData.EMLProfiler/clsWorkEmail.vb
index 1542b6d..881d2d0 100644
--- a/App/DigitalData.EMLProfiler/clsWorkEmail.vb
+++ b/App/DigitalData.EMLProfiler/clsWorkEmail.vb
@@ -15,6 +15,7 @@ Public Class clsWorkEmail
Private _USE_WM As Boolean
Private _windream As clsWindream_allgemein
Private _windream_index As clsWindream_Index
+ Private _filesystem As DigitalData.Modules.Filesystem.File
Private _firebird As Firebird
Private _worked_email As Boolean = False
Sub New(LogConf As LogConfig, ConStr As String, FB_DATASOURCE As String, FB_DATABASE As String, FB_USER As String, FB_PW As String, USE_WM As Boolean)
@@ -22,6 +23,7 @@ Public Class clsWorkEmail
Logger = LogConf.GetLogger
MyLogger = LogConf
_email = New clsEmail(LogConf)
+ _filesystem = New Modules.Filesystem.File(LogConf)
Logger.Debug("clsWorkmail _email initialized")
_DB_MSSQL = New clsDatabase(LogConf, ConStr)
Logger.Debug("clsWorkmail _email initialized")
@@ -280,6 +282,7 @@ Public Class clsWorkEmail
If copy_2_hdd = True Then
Logger.Debug("COPY_2_HDD is ACTIVE!")
PATH_ERROR = pathemail_errors
+
If Directory.Exists(pathOriginal) Then
Dim oTempFilename = pathOriginal
If messageid = True Then
@@ -288,25 +291,31 @@ Public Class clsWorkEmail
oTempFilename &= "\" & CURRENT_MAIL_MESSAGE.GetFileName
End If
- Dim cleanPath As String = String.Join("", oTempFilename.Split(Path.GetInvalidPathChars()))
- If System.IO.File.Exists(cleanPath) = False Then
+ Logger.Debug("Temp FileName: [{0}]", oTempFilename)
+
+ Dim oCleanPath As String = String.Join("", oTempFilename.Split(Path.GetInvalidPathChars()))
+ Dim oVersionedPath As String = _filesystem.GetVersionedFilename(oCleanPath)
+
+ Logger.Debug("Cleaned FileName: [{0}]", oVersionedPath)
+
+ If System.IO.File.Exists(oVersionedPath) = False Then
Try
- File.Delete(cleanPath)
+ File.Delete(oVersionedPath)
Catch ex As Exception
Logger.Error(ex)
Return False
End Try
- CURRENT_MAIL_MESSAGE.Save(cleanPath, True)
- Dim oFileInfo As New FileInfo(cleanPath)
+ CURRENT_MAIL_MESSAGE.Save(oVersionedPath, True)
+ Dim oFileInfo As New FileInfo(oVersionedPath)
Dim oFileLenth As Long = oFileInfo.Length
If oFileLenth > 0 Then
- Logger.Info($"[COPY2HDD] Email saved to ({cleanPath})")
+ Logger.Info($"[COPY2HDD] Email saved to ({oVersionedPath})")
Return True
Else
Logger.Warn($"##!! oFileLenth is 0 !!##")
Try
- File.Delete(cleanPath)
+ File.Delete(oVersionedPath)
Catch ex As Exception
Logger.Error(ex)
End Try
@@ -315,6 +324,7 @@ Public Class clsWorkEmail
Else
Logger.Warn("COPY2HDD - EMail (" & CURRENT_MAIL_MESSAGE.Subject & ") already existing!", False, "RUN_THREAD.COPY_2_HDD")
+
Return False
End If
End If
diff --git a/App/DigitalData.EMLProfiler/clsWorker.vb b/App/DigitalData.EMLProfiler/clsWorker.vb
index 84182c2..b9de15d 100644
--- a/App/DigitalData.EMLProfiler/clsWorker.vb
+++ b/App/DigitalData.EMLProfiler/clsWorker.vb
@@ -178,6 +178,8 @@ Public Class clsWorker
Try
'Delete all Tempfiles
For Each _file In TEMP_FILES
+ Logger.Debug("Trying to delete temp file: [{0}]", _file)
+
If System.IO.File.Exists(_file) Then
Try
System.IO.File.Delete(_file)