Как определить "файл, используемый другим процессом"
Всем доброе утро.
Я читаю вложение (файл JPEG) из базы данных Access (.accdb).
Пользователь выбирает драйвер из выпадающего списка, а затем программа переходит к получению изображения водительских прав. Во второй раз, когда пользователь выбирает заданное имя драйвера, программа выходит из строя с надписью “файл используется другим процессом”, когда я пытаюсь удалить сохраненное имя файла. (См. маркер в коде)
Private Sub GetLicenceImages(ByVal theDriver As String, theLicence As String) Dim engine As New Dao.DBEngine Dim database As Dao.Database = engine.OpenDatabase(CommonDBPath, False, False, "MS Access;PWD=xxxxxxx") Dim rs As Dao.Recordset = database.OpenRecordset("Select HRL_Licence_Image From HR_Licences WHERE HRL_Name_Surname = '" & theDriver & "' AND HRL_Licence_Type = '" & theLicence & "'") While Not rs.EOF Dim rs1 As Dao.Recordset2 = CType(rs.Fields("HRL_Licence_Image").Value, Recordset2) While Not rs1.EOF DriversLicencePicPath = LocalTempPath & rs1("FileName").Value.ToString Dim fld As Dao.Field2 = CType(rs1("FileData"), Field2) System.IO.File.Delete(DriversLicencePicPath) '<===== CRASH OCCURS HERE fld.SaveToFile(DriversLicencePicPath) '-------------------------------- Dim img As Image = Image.FromFile(DriversLicencePicPath) but_Driver_Licence.BackgroundImage = img but_Driver_Licence.Text = "" but_Delete_Drivers_Pic.Visible = True '-------------------------------- rs1.MoveNext() End While rs.MoveNext() End While rs.Close() End Sub
Процесс, который использует файл, - это эта программа, и я понятия не имею, что нужно закрыть или утилизировать (или что-то другое), чтобы показать изображение во второй раз.
Любой совет или руководство будут очень признательны.
С уважением и благодарностью.
Что я уже пробовал:
Я удалил изображение из but_Driver_Licence.Кнопка BackgroundImage перед входом в эту процедуру.
Не знаю, что еще делать.