28.11.2006, 04:45
общий
это ответ
Здравствуйте, Андрющенко Вячеслав Васильевич!
1. Судя по тому, что пишет нам хелп, функция CreateEvent() создает объект-событие.
Параметры:
lpEventAttributes: PSecurityAttributes - это указатель на специальную структуру, которая определяет права доступа. Если вместо нее указать NIL, то "заходи кто хочешь, бери что хочешь". :)
bManualReset - определяет нужна ли вручную проводить реинициализацию объекта. Если задать True, то нужно вызывать дополнительную функцию с помощью ResetEvent(Handle_объекта), если False, то Windows сама химичит.
bInitialState - если честно не понял что это такое. True - выдает при инициализации сигнал, False - не выдает.
lpName - ну это понятно - задание имени объекта. Если поставить NIL, то объект будет безымянный.
2. @ - означает, что в функцию в качестве параметра передается не значение переменной, а адрес в памяти, где она находится, аналогичен Паскалевскому <b>var</b>. Увеличивает скорость выполнения функции, т.к. не создается второй экземпляр переменной для работы в функции.
3. TOverlapped - это специальная структура в которой задается информация для правильной работы асинхронного ввода-вывода. В том числе и тот самый объект-событие, который выдает (или не выдает) тот самый таинственный сигнал, прежде чем заработает функция WriteFile(), т.к. WriteFile() тоже функция ввода вывода и может работать как в синхронном, так и в асинхронном режиме.
Об авторе:
Я только в одном глубоко убеждён - не надо иметь убеждений! :)