![]() |
|
|
![]()
|
|
| Athlon |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 15.1.2006 Где: Украина:: Запорож ье Репутация: нет Всего: нет |
Хочу сделать в своем приложении такую фитчу - когда начинаются длительные вычисления показывать юзеру ролик. Для этого создаю отдельное диалоговое окно с CAnimateCtrl, но располагать ролик в отдельном файле не хочу(юзер удалит или еще какая пакость случится), поэтому добавил ролик в ресурсы следующим образом: пункт меню Insert -> Resource, кнопка Import, в появившемся диалоговом окне выбораю файла для импорта, в окне типа файлов выбратю Все файлы. Потом пытаюсь запустить ролик следующим образом:
В чем ошибка?? P.S. Все это я вытворяю в MS VC++ 6.0 |
|||
|
||||
| Coocky |
|
|||
![]() GUI гуру ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2879 Регистрация: 16.2.2004 Где: Украина. Запорожь е Репутация: 25 Всего: 62 |
Что бы засунуть файл в ресурсы (например *.wav или *.exe) нужно включить какой-либо файл в ресурсы, это добавить в файл описания ресурсов (*.rc) строку
Здесь: ResurceName - уникальное имя ресурса, им мы будем пользоваться, когда будем загружать ресурс. В принципе здесь может стоять и числовой индентификатор ресурса (можно и определенный через #define, но тогда необходимо, чтобы из того места кода, где мы будем грузить ресурс, это определение тоже было видно; в таком случае обычно эти определения выносятся в заголовочный файл ресурсов- для них (файлов) принято использовать расширение *.rh). ТИП_РЕСУРСА - идентификатор типа ресурса. RCDATA - специальный тип для бинарных ресурсов (грубо говоря, массив байт лежит как есть). *.wav тоже можно объявить как RCDATA, но принято его "регистрировать" как WAVE. "Имя файла" - полное имя подключаемого файла вместе с расширением (директории разделяются одиночным '\'). -------------------- Верю в смерть после жизни, в любовь после секса ,в крем после бритья |
|||
|
||||
| Athlon |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 15.1.2006 Где: Украина:: Запорож ье Репутация: нет Всего: нет |
Coocky, если я тебя правильно понял, то все что мне надо сделать это изменить одну строчку в файле ресурсов. В файле ресурсов была такая строчка:
я меняю ее на следующую:
Эффект нулевой - все также open выдает ошибку. Я что-то не понял в чем соль. |
||||
|
|||||
| Earnest |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Смотрим код CAnimateCtrl::Open.
Видим:
Какой отсюда вывод? Правильно, MFC ожидает, что тип ресурса называется "AVI"... В MSDN тоже есть эта информация, если поискать:
-------------------- ... |
||||
|
|||||
| Coocky |
|
|||
![]() GUI гуру ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2879 Регистрация: 16.2.2004 Где: Украина. Запорожь е Репутация: 25 Всего: 62 |
Cушай,земляк,не морочь голову.! Тебе ж на пальцах обьяснили (мне б кто так рассказывал! Вот тебе пример. Все в ресурсах, все работает! VC++ 7.1 Присоединённый файл ( Кол-во скачиваний: 25 )
Static.rar 56,89 Kb-------------------- Верю в смерть после жизни, в любовь после секса ,в крем после бритья |
|||
|
||||
| Athlon |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 15.1.2006 Где: Украина:: Запорож ье Репутация: нет Всего: нет |
Вот теперь все кристально чисто, понятно и работает. Спасибо за объянения, признаю свою ошибку - в MSDN поверхностно просмотрел.
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |