Я пытаюсь загрузить и воспроизвести звуковой файл с помощью:URI Prefix не поддерживается
SoundPlayer simpleSound = new SoundPlayer(@"pack://application:,,,/MyAssembly;component/Sounds/10meters.wav");
simpleSound.Play();
без успеха. Я получаю System.NotSupportedException
:(см. Ниже
System.NotSupportedException: The URI prefix is not recognized.
at System.Net.WebRequest.Create(Uri requestUri, Boolean useUriBase)
at System.Net.WebRequest.Create(Uri requestUri)
at System.Media.SoundPlayer.LoadSync()
at System.Media.SoundPlayer.LoadAndPlay(Int32 flags)
at System.Media.SoundPlayer.Play()
Я посмотрел на Google и SO пытается найти решение, ничего не получалось. Воспроизведение файла с прямым путем работает отлично
SoundPlayer simpleSound = new SoundPlayer(@"D:\Projects\MyAssembly\Sounds\10meters.wav");
simpleSound.Play();
Я также проверил MyAssembly содержание, ресурс есть. ли SoundPlayer
не поддерживает упаковку или что-нибудь я не правильно делаю?
Good гр все в конструкторе потока. –
+1 спасибо. 'StreamResourceInfo sri = Application.GetResourceStream (uri);' не работает, поскольку я делаю это из файла dll, а не основного приложения exe. MediaPlayer слишком тяжел для того, что я делаю :(Любые другие идеи? – GETah
Что значит «не работает»? Вам просто нужно добавить ссылку на PresentationFramework. Невозможно получить доступ к ресурсу с URI пакета независимо от WPF, если это то, что вы пытаетесь сделать ... –