Ich konvertiere eine TIFF-Datei in eine .PNG-Datei in vb.net. Zuerst speichere ich die TIFF-Datei an einem bestimmten Speicherort (gegeben durch NewFileName). Dann konvertiere ich die Datei mit der Bitmap.Save-Methode in .PNG. Später in meinem Programm versuche ich, alle .tif-Dateien zu löschen. Ich bekomme jedoch einen Fehler, der besagt, dass die Dateien noch verwendet werden. Ich habe einige Nachforschungen über die Gründe dafür angestellt und ich habe gelesen, dass viele der Fehler davon herrühren, Filestream nicht zu schließen. Allerdings verwende ich Filestream nicht in meinem Programm, also denke ich, dass es etwas anderes ist. Eine andere Möglichkeit, die vorgeschlagen wurde, war, dass die Datei zweimal geöffnet wurde. Ich habe meinen Code durchforstet und bin mir ziemlich sicher, dass die Dateien nie geöffnet, nur gespeichert und mit dem Befehl bitmap.Save
zugegriffen wurden. Ich habe auch handle.exe
heruntergeladen und Explorer verarbeitet, um herauszufinden, welcher Prozess die Dateien gesperrt hat. Anscheinend werden die Dateien nur dann vom Programm verwendet, wenn ich sie mit dem Befehl bitmap.save
in PNG umwandle. Vielleicht gibt es eine Möglichkeit, bitmap.Save
zu schließen? Alle anderen Vorschläge, was hinzugefügt werden sollte, würden ebenfalls geschätzt werden.Datei kann nicht gelöscht werden, da sie von einem anderen Prozess verwendet wird - VB.net
objApplication.StartCommand(SolidEdgeConstants.AssemblyCommandConstants.AssemblyViewBottomView)
view = window.View
view.Fit()
withoutExt = "C:\Folder" & "\" & shortForms(12) & FileName
NewFileName = withoutExt & ".tif"
view.SaveAsImage(NewFileName, Width:=width, Height:=height, Resolution:=resolution, ColorDepth:=colorDepth)
System.Drawing.Bitmap.FromFile(NewFileName).Save(withoutExt & ".png", System.Drawing.Imaging.ImageFormat.Png)
Vielen Dank im Voraus!
Können Sie den Code teilen, wo Sie zuerst das TIFF öffnen? –
@robin Es tut mir leid, dass meine Frage irreführend war. Ich öffne nie direkt das TIFF, ich greife einfach mit dem Befehl .saveasimage und dem Befehl bitmap.save darauf zu. Ich werde die Frage bearbeiten. –
@robin Ich habe den Beitrag bearbeitet und eingeschlossen, dass die Dateien vom Befehl bitmap.save gesperrt wurden. Vielleicht hilft das. –