Compare commits

...

3 Commits

Author SHA1 Message Date
Jonathan Jenne
3bf845100e Version 2.5.0.4 2022-01-25 13:24:58 +01:00
Jonathan Jenne
397ecb9269 fix: add missing dev express dlls for v21.2 2022-01-25 13:24:49 +01:00
Jonathan Jenne
a921072556 fix file access error and illegal path error 2022-01-25 13:24:28 +01:00
8 changed files with 373 additions and 349 deletions

View File

@@ -41,11 +41,13 @@ Public Class ClassFileDrop
'//
'// set up to obtain the aryFileGroupDescriptor
'// and extract the file name
Dim oStream As IO.Stream = CType(e.Data.GetData("FileGroupDescriptor"), IO.Stream)
Dim stbFileName As System.Text.StringBuilder = New System.Text.StringBuilder("")
Using oStream As IO.Stream = CType(e.Data.GetData("FileGroupDescriptor"), IO.Stream)
Dim aryFileGroupDescriptor(512) As Byte ' = new byte[512]
oStream.Read(aryFileGroupDescriptor, 0, 512)
'// used to build the stbFileName from the aryFileGroupDescriptor block
Dim stbFileName As System.Text.StringBuilder = New System.Text.StringBuilder("")
'// this trick gets the stbFileName of the passed attached file
Dim intCnt As Integer = 76
Do While aryFileGroupDescriptor(intCnt) <> 0
@@ -53,8 +55,12 @@ Public Class ClassFileDrop
intCnt += 1
Loop
oStream.Close()
End Using
'Sonderzeichen entfernen
Dim oTempFileName = DigitalData.Modules.Language.Utils.RemoveInvalidCharacters(stbFileName.ToString)
Dim oTempFileName = DigitalData.Modules.Language.Utils.ConvertTextToSlug(stbFileName.ToString)
LOGGER.Info("Slug for Filename: [{0}]", oTempFileName)
Dim oAttachments = e.Data.GetDataPresent("FileContents")
Dim strOutFile As String = Path.Combine(Path.GetTempPath(), oTempFileName)
'// create the full-path name
@@ -64,13 +70,14 @@ Public Class ClassFileDrop
'// data for the attached file and copy it to disk so we work on it.
'//
'// get the actual raw file into memory
Dim oMemoryStreamInput As IO.MemoryStream = CType(e.Data.GetData("FileContents", True), IO.MemoryStream) 'This returns nothing for an Email
If oMemoryStreamInput Is Nothing = False Then
'Dim oMemoryStreamInput As IO.MemoryStream = CType(e.Data.GetData("FileContents", True), IO.MemoryStream) 'This returns nothing for an Email
Using oStream As MemoryStream = CType(e.Data.GetData("FileContents", True), IO.MemoryStream)
If oStream Is Nothing = False Then
'// allocate enough bytes to hold the raw date
Dim aryFileBytes(CType(oMemoryStreamInput.Length, Int32)) As Byte
Dim aryFileBytes(CType(oStream.Length, Int32)) As Byte
'// set starting position at first byte and read in the raw data
oMemoryStreamInput.Position = 0
oMemoryStreamInput.Read(aryFileBytes, 0, CType(oMemoryStreamInput.Length, Int32))
oStream.Position = 0
oStream.Read(aryFileBytes, 0, CType(oStream.Length, Int32))
'// create a file and save the raw zip file to it
Dim fsOutput As IO.FileStream = New IO.FileStream(strOutFile, IO.FileMode.Create) ';
fsOutput.Write(aryFileBytes, 0, aryFileBytes.Length)
@@ -93,6 +100,7 @@ Public Class ClassFileDrop
LOGGER.Info("Attachment File from Outlook could not be created")
End If
End If
End Using
End If
If e.Data.GetDataPresent("FileGroupDescriptor") Then
Dim oApp As Outlook.Application
@@ -115,9 +123,11 @@ Public Class ClassFileDrop
End If
'Sonderzeichen entfernen
subj = DigitalData.Modules.Language.Utils.RemoveInvalidCharacters(subj)
Dim oSubjectSlug = DigitalData.Modules.Language.Utils.ConvertTextToSlug(subj)
LOGGER.Info("Subject Slug for Filename: [{0}]", oSubjectSlug)
'hardcode a destination path for testing
Dim oFilename As String = IO.Path.Combine(Path.GetTempPath, subj + ".msg")
Dim oFilename As String = IO.Path.Combine(Path.GetTempPath, oSubjectSlug + ".msg")
oFilename = oFilename.Replace("?", "")
oFilename = oFilename.Replace("!", "")
@@ -146,6 +156,7 @@ Public Class ClassFileDrop
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Error in Drop-File" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try

View File

@@ -6,21 +6,26 @@ Imports DigitalData.Modules.Language
Imports Limilabs.Mail
Public Class ClassFilehandle
Public Shared Function Decide_FileHandle(pFilepath As String, pHandletype As String)
Public Shared Function Decide_FileHandle(pFilepath As String, pHandletype As String) As Boolean
Try
'TODO: Before doing anything, clean the filename
Dim oFilename = IO.Path.GetFileName(pFilepath)
Dim oCleanFileName = Utils.RemoveInvalidCharacters(oFilename)
Dim oTempDirectory = IO.Path.GetTempPath()
Dim oTempFilePath = IO.Path.Combine(oTempDirectory, oCleanFileName)
''TODO: Before doing anything, clean the filename
'Dim oFilename = IO.Path.GetFileName(pFilepath)
'Dim oCleanFileName = Utils.RemoveInvalidCharacters(oFilename)
'Dim oTempDirectory = IO.Path.GetTempPath()
'Dim oTempFilePath = IO.Path.Combine(oTempDirectory, oCleanFileName)
Try
TEMP_FILES.Add(oTempFilePath)
IO.File.Copy(pFilepath, oTempFilePath, True)
Catch ex As Exception
LOGGER.Error(ex)
Throw ex
End Try
'Try
' TEMP_FILES.Add(oTempFilePath)
' LOGGER.Debug("Copying file")
' LOGGER.Debug(pFilepath)
' LOGGER.Debug(oTempFilePath)
' IO.File.Copy(pFilepath, oTempFilePath, True)
'Catch ex As Exception
' LOGGER.Error(ex)
' Throw ex
'End Try
Dim oTempFilePath = pFilepath
If oTempFilePath.ToUpper.EndsWith(".MSG") Or oTempFilePath.ToUpper.EndsWith(".EML") Then
CURRENT_MESSAGEID = ""

View File

@@ -210,7 +210,7 @@
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.10\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.7.13\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="Oracle.ManagedDataAccess">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\Oracle.ManagedDataAccess.dll</HintPath>

View File

@@ -14,8 +14,8 @@ Imports System.Runtime.InteropServices
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("Digital Data")>
<Assembly: AssemblyProduct("Global Indexer")>
<Assembly: AssemblyCopyright("Copyright © 2021")>
<Assembly: AssemblyTrademark("2500")>
<Assembly: AssemblyCopyright("Copyright © 2022")>
<Assembly: AssemblyTrademark("2.5.0.4")>
<Assembly: ComVisible(False)>
@@ -33,7 +33,7 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.5.0.2")>
<Assembly: AssemblyVersion("2.5.0.4")>
<Assembly: AssemblyFileVersion("1.0.0.0")>
<Assembly: NeutralResourcesLanguageAttribute("")>

View File

@@ -713,7 +713,7 @@ Public Class frmIndex
End Try
End Function
Private Function Write_Indizes()
Private Function Write_Indizes() As Boolean
Try
_Logger.NewBlock("Write_Indizes")
_Logger.Info("Indexing file [{0}]", CURRENT_NEWFILENAME)
@@ -906,7 +906,7 @@ Public Class frmIndex
Dim oSubject As String = oMail.Subject
Dim oDateIn As Date = oMail.Date
CURRENT_MESSAGEID = oMessageFrom
CURRENT_MESSAGEID = oMessageId
CURRENT_MESSAGEDATE = oDateIn
CURRENT_MESSAGESUBJECT = oSubject
@@ -2785,33 +2785,13 @@ Public Class frmIndex
Me.Close()
End If
End If
' Clear all temp files after indexing
Clear_Tempfiles()
EMAIL.Clear_TempFiles()
Catch ex As Exception
MsgBox("Uncaught error while indexing: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, Text)
' Clear all temp files in case of an error
Clear_Tempfiles()
EMAIL.Clear_TempFiles()
Finally
Me.Cursor = Cursors.Default
End Try
End Sub
Private Sub Clear_Tempfiles()
'TempDateien löschen
For Each oFile In TEMP_FILES
Try
System.IO.File.Delete(oFile)
Catch ex As Exception
LOGGER.Error(ex)
End Try
Next
End Sub
Private Sub checkItemPreview_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles checkItemPreview.CheckedChanged
SetFilePreview(checkItemPreview.Checked)
CONFIG.Config.FilePreview = checkItemPreview.Checked

View File

@@ -136,9 +136,25 @@ Public Class frmStart
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Unexpected Error in Check_Dropped_Files:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Finally
' Clear all temp files after indexing
Clear_Tempfiles()
EMAIL.Clear_TempFiles()
End Try
End Sub
Private Sub Clear_Tempfiles()
'TempDateien löschen
For Each oFile In TEMP_FILES
Try
System.IO.File.Delete(oFile)
Catch ex As Exception
LOGGER.Error(ex)
End Try
Next
End Sub
Sub Open_IndexDialog()
Try
Hide()

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.7.10" targetFramework="net461" />
<package id="NLog" version="4.7.13" targetFramework="net461" />
</packages>

View File

@@ -109,21 +109,21 @@
<!--Digital Data Bibliotheken-->
<Component Id="DigitalDataLibs" Guid="e68a6a14-3917-4989-abec-d30c521a3431">
<File Id="Logging" Name="DigitalData.Modules.Logging.dll" Source="DigitalData.Modules.Logging.dll" KeyPath="yes" />
<File Id="Globix" Name="DigitalData.GUIs.GlobalIndexer.dll" Source="DigitalData.GUIs.GlobalIndexer.dll" KeyPath="no" />
<File Id="Filesystem" Name="DigitalData.Modules.Filesystem.dll" Source="DigitalData.Modules.Filesystem.dll" KeyPath="no" />
<File Id="Config" Name="DigitalData.Modules.Config.dll" Source="DigitalData.Modules.Config.dll" KeyPath="no" />
<File Id="DocumentViewer" Name="DigitalData.Controls.DocumentViewer.dll" Source="DigitalData.Controls.DocumentViewer.dll" KeyPath="no" />
<File Id="LookupGrid" Name="DigitalData.Controls.LookupGrid.dll" Source="DigitalData.Controls.LookupGrid.dll" KeyPath="no" />
<File Id="Windream" Name="DigitalData.Modules.Windream.dll" Source="DigitalData.Modules.Windream.dll" KeyPath="no" />
<File Id="Windows" Name="DigitalData.Modules.Windows.dll" Source="DigitalData.Modules.Windows.dll" KeyPath="no" />
<File Id="Database" Name="DigitalData.Modules.Database.dll" Source="DigitalData.Modules.Database.dll" KeyPath="no" />
<File Id="Filesystem" Name="DigitalData.Modules.Filesystem.dll" Source="DigitalData.Modules.Filesystem.dll" KeyPath="no" />
<File Id="Language" Name="DigitalData.Modules.Language.dll" Source="DigitalData.Modules.Language.dll" KeyPath="no" />
<File Id="License" Name="DigitalData.Modules.License.dll" Source="DigitalData.Modules.License.dll" KeyPath="no" />
<File Id="Encryption" Name="DigitalData.Modules.Encryption.dll" Source="DigitalData.Modules.Encryption.dll" KeyPath="no" />
<File Id="Database" Name="DigitalData.Modules.Database.dll" Source="DigitalData.Modules.Database.dll" KeyPath="no" />
<File Id="Logging" Name="DigitalData.Modules.Logging.dll" Source="DigitalData.Modules.Logging.dll" KeyPath="yes" />
<File Id="Messaging" Name="DigitalData.Modules.Messaging.dll" Source="DigitalData.Modules.Messaging.dll" KeyPath="no" />
<File Id="Messaging.License" Name="MailLicense.xml" Source="MailLicense.xml" KeyPath="no" />
<File Id="Windows" Name="DigitalData.Modules.Windows.dll" Source="DigitalData.Modules.Windows.dll" KeyPath="no" />
<File Id="Windream" Name="DigitalData.Modules.Windream.dll" Source="DigitalData.Modules.Windream.dll" KeyPath="no" />
<File Id="DocumentViewer" Name="DigitalData.Controls.DocumentViewer.dll" Source="DigitalData.Controls.DocumentViewer.dll" KeyPath="no" />
<File Id="LookupGrid" Name="DigitalData.Controls.LookupGrid.dll" Source="DigitalData.Controls.LookupGrid.dll" KeyPath="no" />
<File Id="Globix" Name="DigitalData.GUIs.GlobalIndexer.dll" Source="DigitalData.GUIs.GlobalIndexer.dll" KeyPath="no" />
<File Id="Encryption" Name="DigitalData.Modules.Encryption.dll" Source="DigitalData.Modules.Encryption.dll" KeyPath="no" />
</Component>
<Component Id="GDPictureLibs" Guid="9ea5ab43-58ff-4813-9a8b-f854784f0275">
@@ -150,29 +150,41 @@
<!-- DEVEXPRESS Bibliotheken -->
<Component Id="DevExpressLibs" Guid="CB40DAAE-348E-4BD3-B275-9A526EB8F191">
<File Id="DevExpress.Charts.v21.2.Core" Name="DevExpress.Charts.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Charts.v21.2.Core.dll" KeyPath="yes" />
<File Id="DevExpress.CodeParser.v21.2" Name="DevExpress.CodeParser.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.CodeParser.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.Data.v21.2" Name="DevExpress.Data.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Data.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.Data.Desktop.v21.2" Name="DevExpress.Data.Desktop.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Data.Desktop.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.DataAccess.v21.2" Name="DevExpress.DataAccess.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.DataAccess.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.DataAccess.v21.2.UI.dll" Name="DevExpress.DataAccess.v21.2.UI.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.DataAccess.v21.2.UI.dll" KeyPath="no" />
<File Id="DevExpress.DataVisualization.v21.2.Core.dll" Name="DevExpress.DataVisualization.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.DataVisualization.v21.2.Core.dll" KeyPath="no" />
<File Id="DevExpress.Diagram.v21.2.Core.dll" Name="DevExpress.Diagram.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Diagram.v21.2.Core.dll" KeyPath="no" />
<File Id="DevExpress.Images.v21.2.dll" Name="DevExpress.Images.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Images.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.Office.v21.2.Core" Name="DevExpress.Office.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Office.v21.2.Core.dll" KeyPath="no"/>
<File Id="DevExpress.Pdf.v21.2.Core" Name="DevExpress.Pdf.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Pdf.v21.2.Core.dll" KeyPath="no"/>
<File Id="DevExpress.Pdf.v21.2.Drawing" Name="DevExpress.Pdf.v21.2.Drawing.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Pdf.v21.2.Drawing.dll" KeyPath="no" />
<File Id="DevExpress.Printing.v21.2.Core" Name="DevExpress.Printing.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Printing.v21.2.Core.dll" KeyPath="no" />
<File Id="DevExpress.RichEdit.v21.2.Core" Name="DevExpress.RichEdit.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.RichEdit.v21.2.Core.dll" KeyPath="no" />
<File Id="DevExpress.RichEdit.v21.2.Export" Name="DevExpress.RichEdit.v21.2.Export.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.RichEdit.v21.2.Export.dll" KeyPath="no" />
<File Id="DevExpress.Sparkline.v21.2.Core" Name="DevExpress.Sparkline.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Sparkline.v21.2.Core.dll" KeyPath="no" />
<File Id="DevExpress.Spreadsheet.v21.2.Core" Name="DevExpress.Spreadsheet.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Spreadsheet.v21.2.Core.dll" KeyPath="no" />
<File Id="DevExpress.TreeMap.v21.2.Core" Name="DevExpress.TreeMap.v21.2.Core.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.TreeMap.v21.2.Core.dll" KeyPath="no" />
<File Id="DevExpress.Utils.v21.2" Name="DevExpress.Utils.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Utils.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.Utils.v21.2.UI" Name="DevExpress.Utils.v21.2.UI.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Utils.v21.2.UI.dll" KeyPath="no" />
<File Id="DevExpress.XtraCharts.v21.2" Name="DevExpress.XtraCharts.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraCharts.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.Xpo.v21.2" Name="DevExpress.Xpo.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.Xpo.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraBars.v21.2" Name="DevExpress.XtraBars.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraBars.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraCharts.v21.2" Name="DevExpress.XtraCharts.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraCharts.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraCharts.v21.2.Wizard" Name="DevExpress.XtraCharts.v21.2.Wizard.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraCharts.v21.2.Wizard.dll" KeyPath="no" />
<File Id="DevExpress.XtraDiagram.v21.2" Name="DevExpress.XtraDiagram.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraDiagram.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraEditors.v21.2" Name="DevExpress.XtraEditors.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraEditors.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraGrid.v21.2" Name="DevExpress.XtraGrid.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraGrid.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraLayout.v21.2" Name="DevExpress.XtraLayout.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraLayout.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraNavBar.v21.2" Name="DevExpress.XtraNavBar.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraNavBar.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraPdfViewer.v21.2" Name="DevExpress.XtraPdfViewer.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraPdfViewer.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraPrinting.v21.2" Name="DevExpress.XtraPrinting.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraPrinting.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraRichEdit.v21.2" Name="DevExpress.XtraRichEdit.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraRichEdit.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraSpreadsheet.v21.2" Name="DevExpress.XtraSpreadsheet.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraSpreadsheet.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraTreeList.v21.2" Name="DevExpress.XtraTreeList.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraTreeList.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraLayout.v21.2" Name="DevExpress.XtraLayout.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraLayout.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraTreeMap.v21.2" Name="DevExpress.XtraTreeMap.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraTreeMap.v21.2.dll" KeyPath="no" />
<File Id="DevExpress.XtraVerticalGrid.v21.2" Name="DevExpress.XtraVerticalGrid.v21.2.dll" Source="D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraVerticalGrid.v21.2.dll" KeyPath="no" />
</Component>
<!-- Office-Bibliotheken -->