taglib # не может сохранить изменения - PullRequest
1 голос
/ 17 марта 2012

Я хотел бы отметить некоторые существующие mp3 с помощью taglib #. У меня есть следующее сообщение об ошибке: «Процесс не может получить доступ к файлу, потому что он используется другим процессом». Я не знаю, что это за процесс. Я могу получить доступ к любым файлам mp3 на любом из моих жестких дисков, я также могу использовать свойства файла, но не могу сохранить изменения.

Это код.

OpenFileDialog f = new OpenFileDialog();
if ((bool)f.ShowDialog())
{
   try
   {
       if ( f.OpenFile() != null)
       {

       TagLib.File file = TagLib.File.Create(f.FileName);                            
       file.Tag.Album = "Album1";
       file.Save();

       }
   }
   catch (Exception ex)
   {
     MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message);
   }
}
else
{
    MessageBox.Show("Problem occured, try again later");
}

Не могли бы вы помочь мне? Спасибо

1 Ответ

2 голосов
/ 17 марта 2012

f.OpenFile() создает FileStream вокруг файла.
Поскольку вы никогда не закрываете этот поток, файл остается открытым.

Не делай этого.

...