Hallo, wie auch schon im Beitrag "Virenscanner meldet mein Programm als Virus" von einem anderen Nutzer beschrieben wird auch mein Programm von Trend-Micro Virenscanner als Bedrohung erkannt und in Quarantäne verschoben.
Das passiert bei mir jedoch nicht bei jedem Programmstart, sondern immer wenn eine Datei nicht ordnungsgemäß beendet wurde und ich im Code abfrage ob die wieder hergestellt werden soll.
Mein Code dazu:
Wie könnte ich das anders lösen ?
Gruß Christian
CodeTags korrigiert; bitte zukünftig darauf achten, das richtige CodeHighlighting zu verwenden ~VaporiZed
Das passiert bei mir jedoch nicht bei jedem Programmstart, sondern immer wenn eine Datei nicht ordnungsgemäß beendet wurde und ich im Code abfrage ob die wieder hergestellt werden soll.
Mein Code dazu:
VB.NET-Quellcode
- Friend Function ExtractZipData(ByVal QuellFileName As String) As Boolean
- Dim Exist As Boolean = False
- Dim TempDirectoryName = GetTempDirectoryName(QuellFileName, Exist)
- Dim NewDataFileName = IO.Path.Combine(TempDirectoryName, String.Concat(IO.Path.GetFileNameWithoutExtension(QuellFileName), DataFileExtension))
- Dim löschen As Boolean = False
- If Exist Then
- If MessageBox.Show("Die gewünschte Datei wurde scheinbar bei der letzten Benutzung nicht ordnungsgemäß geschlossen" & Environment.NewLine _
- & "Soll versucht werden die Daten wieder herzustellen?", ProgrammName, MessageBoxButtons.YesNo) = DialogResult.Yes Then
- 'beim entpacken würde das Verzeichnis gelöscht, daher wurde in GetTempDirectoryName ein neuer Name hochgezählt und in TempDirectoryName geschrieben
- Dim SichFileName = String.Concat(TempDirectoryName, "\", IO.Path.GetFileNameWithoutExtension(QuellFileName), "SK_", DataFileExtension)
- If IO.File.Exists(NewDataFileName) AndAlso IO.File.Exists(SichFileName) Then
- IO.File.Delete(NewDataFileName)
- IO.File.Move(SichFileName, NewDataFileName)
- End If
- Else
- löschen = True
- End If
- End If
- If löschen Then
- Dim di As New IO.DirectoryInfo(TempDirectoryName)
- For Each f In di.GetFiles
- f.Delete()
- Next
- di.Delete(True)
- Exist = False
- End If
- QuellZipFile = QuellFileName
- If isOpen() Then
- FileIsReadONly = True
- Else
- SetzeOpenKennung()
- End If
- If Not Exist Then
- Dim UnZipResult = UnZipIt(QuellFileName, TempDirectoryName)
- If UnZipResult <> TempDirectoryName Then
- MessageBox.Show("Beim entpacken wurde zurückgegeben: " & UnZipResult) ' Fehler
- Return False
- End If
- End If
- Me.TempDirectory = TempDirectoryName
- Dim DataFile = NewDataFileName
- If IO.File.Exists(DataFile) Then
- Me.DataFile = DataFile
- Else
- DataFile = InputBox("Bitte fügen Sie den Dateinamen aus dem Temporären Ordner ein", "Datendatei zuweisen", DataFile)
- If IO.File.Exists(DataFile) AndAlso IO.Path.GetExtension(DataFile) = DataFileExtension Then Me.DataFile = DataFile
- End If
- Return True
- End Function
Wie könnte ich das anders lösen ?
Gruß Christian
CodeTags korrigiert; bitte zukünftig darauf achten, das richtige CodeHighlighting zu verwenden ~VaporiZed
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()