Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » WinAPI: несколько вопросов по Win32API

Ответить
Настройки темы
WinAPI: несколько вопросов по Win32API

Аватара для CyraxZ

Ветеран


Сообщения: 784
Благодарности: 11

Профиль | Отправить PM | Цитировать


1. Первым параметром функции WaitForSingleObject передаётся дескриптор ресурса типа HANDLE:
Код: Выделить весь код
	
DWORD WaitForSingleObject( 
HANDLE hObject, 
DWORD dwTimeot 
);
По смыслу объект должен быть сигнального типа (событие, мьютекс, критическая секция и др.). Но что произойдёт, если передать функции дескриптор, скажем, файла (или это тоже объект сигнального типа - открыт/закрыт ?) или потока (это уже точно не объект сигнального типа) ? Дескрипторы то у них у всех одного системного типа - HANDLE...

2. В инете нашёл несколько справочников по функциям WinAPI. Но ни в одном из них нет описания функций WaitCommEvent (WaitForSingleObject и WaitForMultipleObject есть) и CreateMutex, хотя все они из kernel32.dll.
Может ли кто-нибудь посоветовать действительно хороший справочник по функциям Win32API, хотя бы по функциям из библиотеки kernel32.dll...

3. Какую технологию сетевого взаимодействия реализует библиотека NETAPI32.DLL с функциями расширения для работы с сетью ?
Сокеты или что-то другое ?

4. Есть библиотеки Win32 API ядра операционной системы. Для Windows 95/98 это: kernel32.dll, user32.dll, gdi32.dll и comdlg32.dll.
Есть куча дополнительных либ Win32API с функциями расширения (mapi32.dll, netapi32.dll, winmm.dll, winsock2.dll и др.).
Так вот, верно ли, что все эти функции расширения в конечном счёте используют функции ядра ОС ?
Если да, то вызывают ли они функции ядра из библиотек kernel32.dll и др., либо дублируют код этих функций в своих dll-ках ?

Отправлено: 11:30, 13-11-2006

 

Аватара для DillerInc

Обратный инженер


Сообщения: 644
Благодарности: 47

Профиль | Отправить PM | Цитировать


Цитата:
или потока (это уже точно не объект сигнального типа) ?
...вот тебе небольшой кусок кода на TASM32 для примера:

Код: Выделить весь код
; <Создаём удалённый поток>
        push    NULL
        push    NULL
        push    NULL
        push    CodePtr
        push    NULL
        push    0
        push    dword ptr pInfo.hProcess
        call    CreateRemoteThread            
        mov     hRemote, eax                       ; Сохраняем его дескриптор 
; </Создаём удалённый поток>
;
; <Ожидаем завершения удалённого потока>
        push    0FFFFFFFFh
        push    hRemote
        call    WaitForSingleObject
; </Ожидаем завершения удалённого потока>
...делай выводы.
Цитата:
Может ли кто-нибудь посоветовать действительно хороший справочник по функциям Win32API
...да -- MSDN -- WaitCommEvent.

-------
То,что неясно,следует выяснить.То,что трудно творить,следует делать с великой настойчивостью. © Конфуций


Отправлено: 12:28, 13-11-2006 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Аватара для CyraxZ

Ветеран


Сообщения: 784
Благодарности: 11

Профиль | Отправить PM | Цитировать


DillerInc
Т.е., terminated/не terminated...
Ладно, тогда как насчёт консольного ввода ?

Отправлено: 13:04, 13-11-2006 | #3


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


CyraxZ
3. RPC
4. Ищи DEPENDS.EXE из DDK, вызывают

Отправлено: 13:18, 13-11-2006 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » WinAPI: несколько вопросов по Win32API

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Несколько вопросов по ОС Master WEB Общий по Linux 33 02-08-2007 23:23
Несколько вопросов raingts Хочу все знать 2 30-01-2007 18:05
Несколько вопросов barbos Общий по Linux 8 16-12-2004 20:40
Несколько вопросов об ... Sharkky Программирование и базы данных 4 08-10-2003 13:01
Несколько вопросов по RH 9 Frost Wolf Общий по Linux 12 07-09-2003 12:51




 
Переход