|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.09.2013, 13:45 | #1 |
Пользователь
Регистрация: 06.09.2013
Сообщений: 25
|
ресурсы rc
Не могу разобраться как работать с ресурсами. И так, все по порядку.
Я установил MinGW компилятор. Теперь я хочу чтобы при запуске консольного приложения заиграла музыка. Есть wav файл, который нормально проигрывается. Но мне надо запихнуть музыку в exe. Подскажите как это сделать чайнику. Прошу объяснить подробно и без сокращений и сленга :-) Приведите пример файлов. (main.cpp, заголовков и прочего) Я реально ушел в депресняк от этого дела, притом уже который день... |
07.09.2013, 15:37 | #2 |
Пользователь
Регистрация: 06.09.2013
Сообщений: 25
|
Разве никто никогда не вталкивал свои ресурсы в exe?
|
07.09.2013, 19:12 | #3 |
Пользователь
Регистрация: 31.08.2013
Сообщений: 93
|
Файл ресурсов Main.rc:
Код:
Код:
Основной код Main.cpp: Код:
|
07.09.2013, 19:37 | #4 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
музыка в ресурсах - спорный момент
в стандарте С++ ресурсы не описаны, для работы с ними нужны дополнительные библиотеки. Библиотека Qt вроде бы не позволяет засовывать звуки в исполняемый файл (это обосновано, т.к. не всегда и не все ресурсы используются в программе, а при загрузке исполняемого файла все ресурсы попадают в память. Музыка занимает большое количество памяти, поэтому засовывать ее в исполняемый файл не очень хорошо). |
07.09.2013, 20:18 | #5 |
Пользователь
Регистрация: 31.08.2013
Сообщений: 93
|
Абсалютно согласен со всем вышесказанным.
Пихать 50 мегобайт любимой мелодии WAV в экзешник: - Ну я не знаю, зачем? Просто тут есть вопрос - есть ответ. Возможно ли такое? Да, возможно, выше приведен пример. А все остальное хозяин сам будет обдумывать. Но лично я никогда бы не запихал музыку в ресурсы. Не нужна она там. |
07.09.2013, 20:26 | #6 | ||
Участник клуба
Регистрация: 08.10.2007
Сообщений: 1,185
|
Как ресурсы вообще связаны с библиотекой?
Цитата:
Цитата:
А если ещё и не wav, а что-нибудь помельче - mod, xm... Тогда можно вообще в секции данных в массив, чтобы ресурсы не плодить. Последний раз редактировалось Somebody; 07.09.2013 в 20:30. |
||
07.09.2013, 20:48 | #7 |
Пользователь
Регистрация: 31.08.2013
Сообщений: 93
|
С WAV файлом проще. WinAPI функция PlaySound() предусматривает воспроизведение потока из памяти, а вот с медиафайлами сложнее.
Я как то искал так же в гугле способ создания потока из памяти для MP3 при помощи Direct Show, но так и не нашел... Везде много слов, что такое возможно и.т.д и.т.п и "бла бла бла бла", но рабочий пример в виде C++ кода так и не видел. Может кто знает как создать этот поток для IID_IGraphBuilder? Проиграть медиафайл с диска просто: Код:
|
07.09.2013, 21:48 | #8 | |
Пользователь
Регистрация: 06.09.2013
Сообщений: 25
|
Я хотел примерно увидеть то, что написал в первом ответе Vladiger.
Когда я попытался откомпилировать, то получил ошибку Код:
Цитата:
Последний раз редактировалось deniscatch; 07.09.2013 в 21:58. |
|
07.09.2013, 22:14 | #9 | |
Пользователь
Регистрация: 31.08.2013
Сообщений: 93
|
Ошибка вот в этой строчке, которую компилятор сообщает в случае ошибки:
Цитата:
Проверьте его наличие в дирректории проекта, а так же его имя. Меня смутило почему Main.res, а не Main.rc? А так же эти файлы Main.rc, Resource.h, Main.cpp все должны быть включены в проект. Я другим компилятором пользуюсь Visual Express 2008, так что не могу пошагово расписать для MinGW, но принцип то у всех компиляторов похожий. Ищите в свойствах проекта что то типа: - "Добавить файл" или "Добавить элемент"... В общем ошибка не в коде, а в настройках проекта который Вы пытаетесь скомпилировать. Последний раз редактировалось Vladiger; 07.09.2013 в 22:19. |
|
07.09.2013, 22:41 | #10 |
Пользователь
Регистрация: 06.09.2013
Сообщений: 25
|
Vladiger, можно Вас попросить об одолжении? Скачайте пожалуйста MinGW, он бесплатный и весит копейки, и попробуйте откомпилировать этот код. У вас больше опыта, вы бы могли меня очень выручить. Я чувствую, что у меня уже личные счеты с этим компилятором.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ресурсы | StartMis | Общие вопросы Delphi | 11 | 16.07.2010 12:03 |
Ресурсы | JeyKip | Win Api | 2 | 11.04.2010 10:26 |
Ресурсы | VladimirVB | Win Api | 3 | 23.08.2009 12:47 |
Ресурсы | Witaliy | Общие вопросы Delphi | 1 | 27.04.2008 17:40 |
Ресурсы, зачем нужны ресурсы | Hallo | Обсуждение статей | 0 | 12.12.2006 21:30 |