Освобождение медиафайла в Windows Media Player Control

В моем коде C # я попытался удалить видеофайл во время его воспроизведения с помощью Windows Media Player Control.

Я прекратил воспроизведение, сделал его URL-адрес пустым и даже закрыл элемент управления проигрывателем мультимедиа.

string delFile = axWindowsMediaPlayer1.Ctlcontrols.currentItem.sourceURL;

axWindowsMediaPlayer1.Ctlcontrols.stop();
axWindowsMediaPlayer1.URL = null;
axWindowsMediaPlayer1.close();

File.Delete(delFile);

Однако я столкнулся с «System.UnauthorizedAccessException», потому что файл использовался.

Есть ли способ освободить медиафайл, подключенный к моему элементу управления проигрывателем Windows Media?


person Ashram Kane    schedule 13.01.2015    source источник
comment
можно удалить видеофайл, если он не воспроизводится в WMP?   -  person kennyzx    schedule 13.01.2015
comment
Это неожиданно! Я смог его удалить. Это проблема с разрешением? Нельзя ли удалить файл на C # без особых прав? Мой файл и каталог не были доступны только для чтения, это не системный файл или каталог.   -  person Ashram Kane    schedule 13.01.2015
comment
попробуйте axWindowsMediaPlayer1.currentPlaylist.clear(); перед File.Delete   -  person kennyzx    schedule 13.01.2015
comment
это работает? пожалуйста обратная связь   -  person kennyzx    schedule 13.01.2015
comment
Ваш ответ был очень полезным, хотя я еще не мог его решить. File.Delete () не работает с папкой, в которой я тестировал. Я пытался удалить его вручную, но для этого нужны права администратора, хотя это была не системная папка, а обычная папка, созданная мной. Но File.Delete () работает с другими папками, я не уверен, каким был процесс, когда я создал проблемную папку. Совершенно очевидно, что исключение не из-за Windows Media Control.   -  person Ashram Kane    schedule 13.01.2015
comment
Владельцем папки был не я, поэтому я сменил ее на себя. Теперь для этого не нужны особые привилегии. Не знаю, как это было изменено (при резервном копировании файлов на USB ???). Спасибо, в любом случае!   -  person Ashram Kane    schedule 13.01.2015


Ответы (1)


У меня была такая же проблема, и я смог выпустить медиафайл, используя предложение, предоставленное @kennyzk выше:

axWindowsMediaPlayer1.currentPlaylist.clear(); 
person AlexIIP    schedule 01.03.2017