Реклама
Реклама
VisitTime.ru помогает быстро организовать онлайн-запись клиентов и держать расписание под контролем.
📅 Настройте услуги и длительность приёма, откройте свободные окна — и клиенты запишутся сами в пару кликов.
🕒 Вы избегаете накладок, меньше тратите времени на переписки и звонки, а автоматические напоминания повышают явку.
💡 Отличное решение для мастеров, студий и сервисных команд, которым важны порядок и стабильная загрузка.
Начать пользоваться сервисом



TOverlapped

WinApi тип данных TOverlapped

TOverlapped = record
Internal: DWORD;
InternalHigh: DWORD;
Offset: DWORD;
OffsetHigh: DWORD;
hEvent: THandle;
end;

Структура содежит информацию используемую при асинхронном вводе\выводе (Input\Output).

Internal: Зарезервировано для использования операционной системой. Этот элемент определяет системно-зависимый статус и находится в силе, если GetOverlappedResult возвращает ERROR_IO_PENDING с не установленной расширенной инфрмацией ошибки.

InternalHigh: Зарезервировано для использования операционной системой. Этот элемент определяет размер(длинну) переданных данных и находится в силе, если GetOverlappedResult возвращает True.

Offset: Позиция в файле начиная с которой надо запускать передачу. Позиция является байтовым смещением от начала файла. Вызывающий процесс устанавливает этот элемент перед вызовом функций ReadFile или WriteFile. Этот элемент игнорируется при чтении\записи в\из Канал(Pipe) или устройства связи и должно быть нулевым.

OffsetHigh: Старшее слово смещения позиции в файле начиная с которого надо запускать передачу. Этот элемент игнорируется при чтении\записи в\из Канал(Pipe) или устройства связи и должно быть нулевым.

hEvent: Хендл события устанавливаемый в сигналнье состояние по окончинии операции. Вызывающий процесс должен установить этот элемент в нуль или записать корректный хендл события перед вызовом перекрытых(overlapped) функций. Для того, чтобы создать обьект события надо вызывать функцию CreateEvent.

Такие функции как, например, WriteFile устанавливают событие в несигнальное состояние, до вызова операции ввода\вывода.

Замечания
Для того, чтобы определить закончиласьи ли операции ввода\вывода можно использовать макрос HasOverlappedIoCompleted. {Прим.пер.: Не знаю есть ли этот макрос в Дельфи, может и нет.}
Для отмены асинхронно операции ввода\вывода используйте функцию CancelIo.

Материал взят из:
Русская спpавка по Windows API



Последние из рубрики

ОтменитьДобавить комментарий