Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Win API


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / WinAPI

Выпуск № 449
от 13.08.2007, 17:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 412, Экспертов: 41
В номере:Вопросов: 1, Ответов: 3


Вопрос № 97740: Доброе время суток, уважаемые эксперты. У меня такой к вам вопрос. Часто вижу в приложениях на чистом api использование ресурсов. Но не пойму их смысл. Подскажите хороший учебник или книгу по ресурсам и скажите, пожалуйста, почему используют эти ресу...

Вопрос № 97.740
Доброе время суток, уважаемые эксперты. У меня такой к вам вопрос. Часто вижу в приложениях на чистом api использование ресурсов. Но не пойму их смысл. Подскажите хороший учебник или книгу по ресурсам и скажите, пожалуйста, почему используют эти ресурсы для создания допустим меню, ведь есть альтернативные функции в winapi например insertmenu, или ресурсы это просто макрос или средство для быстрого создания интерфейса. Спасибо.
Отправлен: 08.08.2007, 16:54
Вопрос задал: Александр Михайлович (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Sergey A. Wedensky
Здравствуйте, Александр Михайлович!

Ресурсы - это данные, встраиваемые в исполняемый файл программы (или dll-библиотеки), которые можно загружать во время выполнения и редактировать внешними средствами без перекомпиляции, т.е. не обязательно иметь исходные коды для редактирования ресурсов.

Использование ресурсов удобно со многих точек зрения. Первое - локализация приложений. Вы можете создать несколько копий одного ресурса с различными локализациями. И даже если ресурс (таблица строк, например) один, при переводе на другой язык гораздо удобнее редактировать эту таблицу каким-либо редактором ресурсов, нежели искать по всему коду строковые константы.

Гораздо удобнее создать то же меню в визуальном редакторе и загрузить его одним вызовом LoadMenu(), чем писать что-то вроде
HMENU hPopup = CreatePopupMenu();
AppendMenu(hPopup, ...);
...

Кроме того, ресурсы могут быть не только стандартных типов. Вы можете запихнуть в ресурс совершенно произвольные данные!

А графика или анимация? Например, как Вы динамически создадите логотип фирмы для экрана-заставки или диалога "About"? Разве что тащить в отдельном файле и загружать оттуда? А если поместить в ресурс - все компонуется в один исполняемый модуль и загружается одной-двумя строчками кода в HBITMAP или AVI.

А почитать про ресурсы можно, думаю, в любой книге по WinAPI.
Ответ отправил: Sergey A. Wedensky (статус: Студент)
Ответ отправлен: 08.08.2007, 17:38

Отвечает: Mitya86
Здравствуйте, Александр Михайлович!

Хорошая книга не только по ресурсам но и по программированию на win32 api - Чарльз Петзольд "Программирование для Windows 95"
Ответ отправил: Mitya86 (статус: 3-ий класс)
Ответ отправлен: 08.08.2007, 23:39

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Александр Михайлович!

Посмотрите книгу П.В. Румянцева, Азбука программирования в win32 api

Использование ресурсов дает две вполне определенные выгоды:
1)Ресурсы загружаются в память лишь при обращении к ним, т.е. реализуется экономия памяти.
2)Свойства ресурсов поддерживаются системой автоматически, не требуя от программиста написания дополнительного кода.
Удачи!

---------
И только наступив на грабли мы приобретаем драгоценный опыт!
Ответ отправил: Зенченко Константин Николаевич (статус: Специалист)
Ответ отправлен: 09.08.2007, 18:15


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.54 beta от 01.08.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное