- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Русский справочник по Win32 API - Тарас Сорока
Шрифт:
Интервал:
Закладка:
Комментарии
Функция AddAtom сохраняет не более одной копии указанной строки в локальной таблице атомов. Если строка уже находится в таблице, функция возвращает существующий атом, и, в случае строкового атома, увеличивает счетчик ссылок строки.
Для преобразования значения WORD в строку, которая может быть добавлена функцией AddAtom в таблицу атомов, может быть использован макрос MAKEINTATOM .
AddAtom возвращает строковый атом, чье значение лежит в диапазоне от 0 xC 000 до 0 xFFFF .
Если значение lpString имеет вид "#1234", AddAtom возвращает целый атом, чье значение являет собой 16-битное представление десятичного числа, указанного в строке (в данном случае 0 x 04 D 2). Если указанное десятичное значение представляет собой 0 x 0000 или значение, лежащее в диапазоне от 0 xC 000 до 0 xFFFF, возвращается нуль, указывающий на ошибку. Если значение lpString лежит в диапазоне от 0 x 0001 до 0 xBFFF, возвращается младшее слово lpString .
См. также
DeleteAtom, FindAtom, GetAtomName, GlobalAddAtom, GlobalDeleteAtom, GlobalFindAtom, GlobalGetAtomName, MAKEINTATOM .
DeleteAtom
Функция DeleteAtom уменьшает счетчик ссылок локальной строки атома. Если счетчик ссылок атома достигает нулевого значения, DeleteAtom удаляет строку, связанную с атомом, из таблицы локальных атомов.
ATOM DeleteAtom (
ATOM nAtom // удаляемый атом
);
Параметры
nAtom - идентифицирует удаляемые атом и строку символов.
Возвращаемые значения
В случае успеха возвращается нуль.
В случае неудачи возвращается значение параметра nAtom . Для получения дополнительной информации об ошибке вызовите функцию GetLastError .
Комментарии
Счетчик ссылок строки атома определяет, сколько раз строка была добавлена или удалена в/из таблицы локальных атомов. Функция DeleteAtom уменьшает счетчик ссылок строки, которая уже содержится в таблице локальных атомов, при каждом вызове, но удаляет строку только по достижению счетчиком нуля.
Единственный путь убедиться в том, что атом был удален из таблицы атомов - повторяющийся вызов функции до тех пор, пока ее вызов не закончится неудачей. Вызов функции FindAtom или DeleteAtom завершится неудачей, когда значение счетчика ссылок строки уменьшено до нуля.
Вызов DeleteAtom не воздействует на целый атом (атом, созданный макросом MAKEINTATOM ). Функция всегда возвращает нуль для целого атома.
См. также
AddAtom, FindAtom, GlobalAddAtom, GlobalDeleteAtom, GlobalFindAtom, MAKEINTATOM .
FindAtom
Функция FindAtom ищет в таблице локальных атомов заданную строку символов и возвращает атом, связанный с данной строкой.
ATOM FindAtom (
LPCTSTR lpString // указатель на строку поиска
);
Параметры
lpString - указывает на завершающуюся нулем строку символов.
Возвращаемые значения
В случае успеха, возвращается атом, связанный с данной строкой.
Комментарии
Не смотря на то, что Windows сохраняет регистр строки в таблице атомов, поиск, выполняемый функцией FindAtom , не чувствителен к регистру.
См. также
AddAtom, DeleteAtom, GlobalAddAtom, GlobalDeleteAtom, GlobalFindAtom .
GetAtomName
Функция GetAtomName возвращает копию символьной строки, связанной с указанным локальным атомом. Эта функция заменяет функцию GetAtomHandle .
UINT GetAtomName (
ATOM nAtom , // атом, идентифицирующий символьную строку
LPTSTR lpBuffer , // адрес буфера для строки атома
int nSize // размер буфера
);
Параметры
nAtom - определяет локальный атом, который идентифицирует получаемую символьную строку.
lpBuffer - указывает на буфер для символьной строки.
nSize - определяет размер буфера в символах.
Возвращаемые значения
В случае успеха возвращается длина скопированной в буфер строки, в символах, не считая завершающий нулевой символ.
В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .
Примечания
Строка, возвращаемая для целочисленного атома (созданного макросом MAKEINTATOM ) - завершающаяся нулем строка, в которой первым символом является символ '#', а оставшиеся символы представляют беззнаковое целое, первоначально переданное MAKEINTATOM .
См. также
AddAtom, DeleteAtom, FindAtom, GlobalAddAtom, GlobalDeleteAtom, GlobalFindAtom, GlobalGetAtomName, MAKEINTATOM .
GlobalAddAtom
Функция GlobalAddAtom добавляет строку символов в таблицу глобальных атомов и возвращает уникальное значение (атом), идентифицирующее строку.
ATOM GlobalAddAtom (
LPCTSTR lpString // указатель на добавляемую строку
);
Параметры
lpString - указатель на добавляемую строку, завершающуюся нулем. Строка может иметь максимальный размер в 255 байт. Строки, отличающиеся только регистром, считаются идентичными.
Возвращаемые значения
В случае успеха возвращается созданный атом.
В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .
Комментарии
Если строка уже находится в таблице глобальных атомов, функция возвращает атом для существующей строки, и счетчик ссылок атома увеличивается.
Строка, связанная с атомом, не удаляется из памяти до тех пор, пока ее счетчик ссылок не станет равен нулю. Для большей информации смотрите функцию GlobalDeleteAtom .
Глобальные атомы не удаляются автоматически по завершению приложения. Для каждого вызова функции GlobalAddAtom должен быть соответствующий вызов функции GlobalDeleteAtom .
GlobalAddAtom возвращает строковый атом, чье значение лежит в диапазоне от 0 xC 000 до 0 xFFFF .
Если значение lpString имеет вид "#1234", GlobalAddAtom возвращает целый атом, чье значение являет собой 16-битное представление десятичного числа, указанного в строке (в данном случае 0 x 04 D 2). Если указанное десятичное значение представляет собой 0 x 0000 или значение, лежащее в диапазоне от 0 xC 000 до 0 xFFFF, возвращается нуль, указывающий на ошибку. Если значение lpString лежит в диапазоне от 0 x 0001 до 0 xBFFF, возвращается младшее слово lpString .
Для преобразования значения WORD в строку, которая может быть добавлена функцией GlobalAddAtom в таблицу атомов, может быть использован макрос MAKEINTATOM .
См . также
AddAtom, DeleteAtom, FindAtom, GetAtomName, GlobalDeleteAtom, GlobalFindAtom, GlobalGetAtomName, MAKEINTATOM .
GlobalDeleteAtom
Функция GlobalDeleteAtom уменьшает счетчик ссылок глобальной строки атома. Если счетчик ссылок атома достигает нулевого значения, GlobalDeleteAtom удаляет строку, связанную с атомом, из таблицы глобальных атомов.
ATOM GlobalDeleteAtom (
ATOM nAtom // удаляемый атом
);
Параметры
nAtom - идентифицирует удаляемые атом и строку символов.
Возвращаемые значения
В случае успеха возвращается нуль.
В случае неудачи возвращается значение параметра nAtom . Для получения дополнительной информации об ошибке вызовите функцию GetLastError .
Комментарии
Счетчик ссылок строки атома определяет, сколько раз строка была добавлена или удалена в/из таблицы глобальных атомов. Функция GlobalDeleteAtom уменьшает счетчик ссылок строки, которая уже содержится в таблице глобальных атомов, при каждом вызове.
Единственный путь убедиться в том, что атом был удален из таблицы атомов - повторяющийся вызов функции до тех пор, пока ее вызов не закончится неудачей. Вызов функции GlobalFindAtom или GlobalDeleteAtom завершится неудачей, когда значение счетчика ссылок строки уменьшено до нуля.
Вызов GlobalDeleteAtom не воздействует на целый атом (атом, созданный макросом MAKEINTATOM ). Функция всегда возвращает нуль для целого атома.
См. также
AddAtom, DeleteAtom, FindAtom, GlobalAddAtom, GlobalFindAtom, MAKEINTATOM .
GlobalFindAtom
Функция GlobalFindAtom ищет в таблице глобальных атомов заданную строку символов и возвращает глобальный атом, связанный с данной строкой.

