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

Функция DragAcceptFiles регистрирует окно, если оно принимает перетаскиваемые на него файлы.

VOID DragAcceptFiles (

HWND hWnd , // дескриптор окна

BOOL fAccept // опция разрешения принятия файлов

);

Параметры

hWnd - идентифицирует окно, регистрируемое, если оно принимает перетаскиваемые на него файлы.

fAccept - определяет, принимает ли окно, определенное параметром hWnd , перетаскиваемые на него файлы. Значение TRUE разрешает принятие файлов, значение FALSE его запрещает.

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

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

Комментарии

Приложение, вызывающее DragAcceptFiles со значением TRUE параметра fAccept идентифицирует себя как способное обрабатывать сообщение WM_DROPFILES от диспетчера файлов.

См . также

WM_DROPFILES.

<p>DragFinish</p>

Функция DragFinish освобождает память, которую Windows выделила для использования в процессе передачи имен файлов в приложение.

VOID DragFinish (

HDROP hDrop // дескриптор освобождаемой памяти

);

Параметры

hDrop - идентифицирует структуру, описывающую перемещенные мышью файлы. Этот дескриптор извлекается из параметра wParam сообщения WM_DROPFILES.

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

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

См . также

WM_DROPFILES.

<p>DragQueryFile</p>

Функция DragQueryFile извлекает имена перемещенных мышью файлов.

UINT DragQueryFile (

HDROP hDrop , // дескриптор структуры для перемещенных файлов

UINT iFile , // индекс запрошенного файла

LPTSTR lpszFile , // буфер для имени файла

UINT cch // размер буфера для имени файла

);

Параметры

hDrop - идентифицирует структуру, содержащую имена файлов.

iFile - определяет индекс запрашиваемого файла. Если значение параметра iFile равно 0 xFFFFFFFF, DragQueryFile возвращает число перемещенных файлов. Если значение параметра iFile лежит между нулем и количеством перемещенных файлов, DragQueryFile копирует соответствующее значению им файла в буфер, указанный параметром lpszFile .

lpszFile - указывает на буфер для имени перемещенного файла. Им файла представляет собой завершающуюся нулем строку. Если значение lpszFile равно NULL, DragQueryFile возвращает необходимый размер буфера в символах.

cch - определяет размер буфера в символах.

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

Когда функция копирует имя файла в буфер, то возвращается число скопированных символов без учета завершающего нулевого символа.

Если значение параметра iFile равно 0 xFFFFFFFF, то возвращается число перемещенных мышью файлов.

Если значение параметра iFile лежит между нулем и количеством перемещенных файлов, и значение параметра lpszFile равно NULL, возвращается требуемый размер буфера, в символах, без учета завершающего нулевого символа.

См . также

DragQueryPoint .

<p>DragQueryPoint</p>

Функция DragQueryPoint возвращает позицию курсора мыши в тот момент, когда при перетаскивании файлов была отпущена левая кнопка мыши.

BOOL DragQueryPoint (

HDROP hDrop , // дескриптор структуры для перемещенных файлов

LPPOINT lppt // указатель на структуру для координат мыши

);

Параметры

hDrop - идентифицирует структуру, описывающую перемещенные мышью файлы.

lppt - указывает на структуру POINT , которую функция заполняет координатами мыши в тот момент, когда при перетаскивании файлов была отпущена левая кнопка мыши.

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

Если отпускание левой кнопки мыши происходит в клиентской области окна, то возвращается ненулевое значение.

Если отпускание левой кнопки мыши происходит вне клиентской области окна, то возвращается нуль.

Комментарии

Координаты курсора мыши возвращаются для окна, получающего сообщение WM _ DROPFILES .

См. также

DragQueryFile, POINT , WM_DROPFILES.

<p>FindExecutable</p>

Функция FindExecutable возвращает имя и дескриптор исполняемого (.ЕХЕ) файла, ассоциированного с указанным файлом.

HINSTANCE FindExecutable (

LPCTSTR lpFile , // указатель на строку с именем файла

LPCTSTR lpDirectory , // указатель на строку с директорией по

// умолчанию

LPTSTR lpResult // указатель на буфер для строки с именем

// возвращаемого .ЕХЕ файла

);

Параметры

lpFile - указатель на завершающуюся нулем строку, определяющую имя файла. Файл может быть либо документом, либо исполняемым файлом.

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

lpResult - указатель на буфер для имени возвращаемого функцией файла. Имя файла представляет собой завершающуюся нулем строку, определяющую исполняемый файл, который запускается при открытии файла, заданного параметром lpFile .

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

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

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