Читаем Русский справочник по Win32 API полностью

Для указания языка, отличного от текущего, используйте макрос MAKELANGID .

Возвращаемые значения

В случае успеха возвращается дескриптор блока с информацией об указанном ресурсе. Для получения дескриптора ресурса передайте этот дескриптор в функцию LoadResource .

В случае неудачи возвращается NULL . Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

Комментарии

Если старшее слово значения параметра lpName или lpType равно нулю, младшее слово определяет целочисленный идентификатор имени или типа указанного ресурса. В противном случае, оба значения этих параметров представляют собой длинные указатели на завершающиеся нулем строки. Если первый символ строки равен '#', оставшиеся символы представляют собой десятичное число, которое определяет целочисленный идентификатор имени или типа ресурса. Например, строка "#258" представляет собой целочисленный идентификатор 258.

Приложение может уменьшить количество памяти, необходимое ресурсу, обращаясь к нему по целочисленному идентификатору вместо имени.

Приложение может использовать FindResourceEx для поиска ресурса любого типа, но эта функция должна быть использована только в том случае, если приложение должно иметь доступ к двоичным данным ресурсов, когда оно впоследствии вызывает функции LoadLibrary и LockResource .

Для немедленного использования ресурса приложение должно использовать одну из следующих функций для поиска и загрузки ресурса:

Функция

Действие

FormatMessage

Загружает и форматирует элемент таблицы сообщений.

LoadAccelerators

Загружает таблицу акселераторов.

LoadBitmap

Загружает битовое изображение.

LoadCursor

Загружает курсор.

LoadIcon

Загружает иконку.

LoadMenu

Загружает меню.

LoadString

Загружает элемент таблицы строк.

Например, приложение должно использовать функцию LoadIcon для загрузки иконки для ее отображения на экране. Тем не менее, приложение должно использовать функции FindResource и LoadResource , если оно загружает иконку для копирования ее данных в другое приложение.

См . также

FindResource, FormatMessage, LoadAccelerators, LoadBitmap, LoadCursor, LoadIcon, LoadMenu, LoadResource, LoadString, LockResource, SizeofResource .

<p>Пространство имен оболочки</p><p>BrowseCallbackProc</p>

Функция BrowseCallbackProc представляет собой определяемую приложением функцию обратного вызова, используемую совместно с функцией SHBrowseForFolder . Диалоговое окно выбора папки вызывает эту функцию для уведомления о событиях. Тип BFFCALLBACK определяет указатель на эту функцию обратного вызова.

int BrowseCallbackProc (

HWND hwnd ,

UINT uMsg ,

LPARAM lParam ,

LPARAM lpData

);

Параметры

hwnd - дескриптор диалогового окна. Функция обратного вызова может отправлять окну следующие сообщения:

BFFM_ENABLEOK

Разрешает кнопку ОК, если значение параметра wParam не равно нулю. В противном случае запрещает кнопку ОК.

BFFM_SETSELECTION

Выбирает указанную папку. Значение lParam представляет собой PIDL выбираемой папки, если значение wParam равно FALSE, или путь папки в противном случае.

BFFM _ SETSTATUSTEXT

Устанавливает текст состояния в завершающуюся нулем строку, определенную значением параметра lParam .

uMsg - идентифицирует событие. Может принимать одно из следующих значений:

BFFM_INITIALIZED

Диалоговое окно завершило инициализацию. Значение параметра lpData равно NULL .

BFFM_SELCHANGED

Изменился выбор в диалоговом окне. lpData представляет собой указатель на список идентификаторов элемента для выбранной папки.

lParam - зависящее от сообщения значение.

lpData - определяемое приложением значение, которое было указано в члене lParam структуры типа BROWSEINFO .

Возвращаемые значения

Функция возвращает нуль.

См. также

Перейти на страницу:

Похожие книги

C++: базовый курс
C++: базовый курс

В этой книге описаны все основные средства языка С++ - от элементарных понятий до супервозможностей. После рассмотрения основ программирования на C++ (переменных, операторов, инструкций управления, функций, классов и объектов) читатель освоит такие более сложные средства языка, как механизм обработки исключительных ситуаций (исключений), шаблоны, пространства имен, динамическая идентификация типов, стандартная библиотека шаблонов (STL), а также познакомится с расширенным набором ключевых слов, используемым в .NET-программировании. Автор справочника - общепризнанный авторитет в области программирования на языках C и C++, Java и C# - включил в текст своей книги и советы программистам, которые позволят повысить эффективность их работы. Книга рассчитана на широкий круг читателей, желающих изучить язык программирования С++.

Герберт Шилдт

Программирование, программы, базы данных
C++
C++

С++ – это универсальный язык программирования, задуманный так, чтобы сделать программирование более приятным для серьезного программиста. За исключением второстепенных деталей С++ является надмножеством языка программирования C. Помимо возможностей, которые дает C, С++ предоставляет гибкие и эффективные средства определения новых типов. Используя определения новых типов, точно отвечающих концепциям приложения, программист может разделять разрабатываемую программу на легко поддающиеся контролю части. Такой метод построения программ часто называют абстракцией данных. Информация о типах содержится в некоторых объектах типов, определенных пользователем. Такие объекты просты и надежны в использовании в тех ситуациях, когда их тип нельзя установить на стадии компиляции. Программирование с применением таких объектов часто называют объектно-ориентированным. При правильном использовании этот метод дает более короткие, проще понимаемые и легче контролируемые программы. Ключевым понятием С++ является класс. Класс – это тип, определяемый пользователем. Классы обеспечивают сокрытие данных, гарантированную инициализацию данных, неявное преобразование типов для типов, определенных пользователем, динамическое задание типа, контролируемое пользователем управление памятью и механизмы перегрузки операций. С++ предоставляет гораздо лучшие, чем в C, средства выражения модульности программы и проверки типов. В языке есть также усовершенствования, не связанные непосредственно с классами, включающие в себя символические константы, inline-подстановку функций, параметры функции по умолчанию, перегруженные имена функций, операции управления свободной памятью и ссылочный тип. В С++ сохранены возможности языка C по работе с основными объектами аппаратного обеспечения (биты, байты, слова, адреса и т.п.). Это позволяет весьма эффективно реализовывать типы, определяемые пользователем. С++ и его стандартные библиотеки спроектированы так, чтобы обеспечивать переносимость. Имеющаяся на текущий момент реализация языка будет идти в большинстве систем, поддерживающих C. Из С++ программ можно использовать C библиотеки, и с С++ можно использовать большую часть инструментальных средств, поддерживающих программирование на C. Эта книга предназначена главным образом для того, чтобы помочь серьезным программистам изучить язык и применять его в нетривиальных проектах. В ней дано полное описание С++, много примеров и еще больше фрагментов программ.

Бьёрн Страуструп , Бьярн Страустрап , Мюррей Хилл

Программирование, программы, базы данных / Программирование / Книги по IT
Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ
Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ

Эта книга представляет собой перевод третьего издания американского бестселлера Effective C++ и является руководством по грамотному использованию языка C++. Она поможет сделать ваши программы более понятными, простыми в сопровождении и эффективными. Помимо материала, описывающего общую стратегию проектирования, книга включает в себя главы по программированию с применением шаблонов и по управлению ресурсами, а также множество советов, которые позволят усовершенствовать ваши программы и сделать работу более интересной и творческой. Книга также включает новый материал по принципам обработки исключений, паттернам проектирования и библиотечным средствам.Издание ориентировано на программистов, знакомых с основами C++ и имеющих навыки его практического применения.

Скотт Майерс , Скотт Мейерс

Программирование, программы, базы данных / Программирование / Книги по IT