Я пытаюсь написать код, который считывает каждый элемент из пользовательской библиотеки Windows Media Player. Этот код работает для большинства пользователей, но для некоторых пользователей getAll()
вернет пустой список, когда у них явно есть сотни или тысячи элементов в их библиотеке проигрывателя Windows Media.
var player = new WindowsMediaPlayer();
var collection = player.mediaCollection;
var list = collection.getAll();
int total = list.count;
Я ссылаюсь на пространство имен WMPLib
, добавляя ссылку COM на wmp.dll. Мое приложение поставляется с Interop.WMPLib.dll. Как можно настроить компьютеры некоторых пользователей таким образом, чтобы они запускали проигрыватель Windows Media с большим количеством песен в своей библиотеке, но WMPLib не работал должным образом? Кроме того, какие обходные пути существуют для надежного чтения пользовательской библиотеки Windows Media Player во всех случаях?