Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
21 / 21 / 7
Регистрация: 22.02.2013
Сообщений: 237
1

Relative URI

08.02.2014, 16:18. Показов 2877. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день.
Никак не могу написать правильный Relative URI путь для MediaPlayer.

По полному пути файл проигрывается:
C#
1
2
player = new MediaPlayer();
player.Open(new Uri(@"c:\мои документы\C#\WPF\SnakeGame\SnakeGame\Sounds\move.wav"));
По относительному пути не работает:
C#
1
player.Open(new Uri("Sounds/move.wav",UriKind.Relative));
Как правильно записать Relative путь?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.02.2014, 16:18
Ответы с готовыми решениями:

Uri и все об uri
Народ, можете объяснить для чего нужно uri Например что бы в CookieContainer добавить куку нужно...

System.Uri -> string
Как System.Uri ппеоброзовать в string? В моём случаи в System.Uri это адрес страници полученый...

Регистрация программы в URI Scheme
Ребят помогите... Я так и не понял как сделать следующие HKEY_CLASSES_ROOT alert ...

Получить путь к каталогу из uri
Приветствую, string patch =...

11
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
08.02.2014, 16:45 2
почему слэш в другую сторону?
0
21 / 21 / 7
Регистрация: 22.02.2013
Сообщений: 237
08.02.2014, 17:16  [ТС] 3
xoraxax, слеш нормальный, если @ нет вначале.
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
08.02.2014, 18:13 4
new Uri("Sounds/move.wav",UriKind.Relative).ToString() = ?
0
21 / 21 / 7
Регистрация: 22.02.2013
Сообщений: 237
08.02.2014, 19:03  [ТС] 5
Psilon, = Sounds/move.wav и?
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
08.02.2014, 19:04 6
del
0
21 / 21 / 7
Регистрация: 22.02.2013
Сообщений: 237
08.02.2014, 19:13  [ТС] 7
Psilon, я не вкурил, ЧТО надо исправить.
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
08.02.2014, 19:19 8
BORIS_HERE, думаю, рабочая папка не та. В Msdn написано, что он отталкивается от предыдущего базового Uri. Чему он у вас равен?
0
21 / 21 / 7
Регистрация: 22.02.2013
Сообщений: 237
08.02.2014, 20:53  [ТС] 9
Как я понял, легко открывать файлы, которые находятся в bin/debug - просто по названию файла, с остальными - прописывать полный путь.
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
08.02.2014, 21:17 10
BORIS_HERE, ну логично, что Sounds и прочие папки нужно копировать в bin, и то что bin - рабочая папка экзешника.
0
21 / 21 / 7
Регистрация: 22.02.2013
Сообщений: 237
08.02.2014, 22:01  [ТС] 11
Запихнул папку Sounds в bin/Debug. Теперь работает:
C#
1
player.Open(new Uri("Sounds/move.wav",UriKind.RelativeOrAbsolute));
Но я подозревал, что папку Debug обычно не трогают, а всё помещают в папку проекта. Вобщем хз.
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
09.02.2014, 03:21 12
Лучший ответ Сообщение было отмечено BORIS_HERE как решение

Решение

BORIS_HERE, ну блин, представь, что ты хочешь продавать свое приложение (ну вдруг). Исходники - коммерческая тайна. Естественно, копируется только папка Relese, причем она как-нибудь переименовывается (например, MyMegaProgram). Но звук-то программе откуда-то брать надо? А каталог с программой - самый верхний в ирерархии. Посмотри сам, в любой программе звук и прочее всегда лежат либо рядом с экзешником в соответствующей папке, либо экзешник лежит в папке bin (но это редко, очень редко).

Но я подозревал, что папку Debug обычно не трогают
Так её и не трогают. Обычно настраивается, чтобы при компиляции папка Sounds копировалась в папку debug/relese, например когда у меня была похожая проблема, я её решал так:

md "Audio"
copy "$(ProjectDir)Audio\*.*" "Audio"


прописывается в свойствах проекта в post-builds events. То есть скопировать все из папки музыки в текущую папку, куда компилируем (debug или release). Мое Audio это твое Sounds.

Ну и все. Из дебага все удалять можно, а при построении звук туда скопируется сам.
0
09.02.2014, 03:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.02.2014, 03:21
Помогаю со студенческими работами здесь

Возможно ли приведение string в Uri?
Добрый день. Возможно ли приведение из string в Uri? Код: var uris = new Uri; ...

HttpWebRequest - Не распознан префикс URI
Здравствуйте. При отправке обычного GET запроса на сайт, получаю исключение: Не распознан префикс...

Создание Uri для webBrowser
Привет! Есть объект webBrowser. Пытаюсь ему указать параметр Url, но не выходит почему-то. Не...

Формат Uri без параметра
Столкнулась с такой проблемой var test = new Uri(parameter) Как сделать так, чтобы если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru