пиксель X = (диалоговая_координата X * базовая_координата X ) / 4
пиксель Y = (диалоговая_координата Y * базовая_координата Y ) / 8
Аналогично происходит преобразование пикселей в оконные координаты:
диалоговая_координата X = (пиксель X * 4) / базовая_координата X
диалоговая_координата Y = (пиксель Y * 8) / базовая_координата Y
См. также
MapDialogRect .
GetDlgCtrlID
Функция GetDlgCtrlID возвращает идентификатор заданного элемента управления.
int GetDlgCtrlID (
HWND
);
Параметры
Возвращаемые значения
В случае успеха возвращается идентификатор элемента управления.
В случае неудачи возвращается NULL . Вызов функции также закончится неудачей при неверном значении параметра
Комментарии
GetDlgCtrlID также принимает в качестве параметров и дескрипторы дочерних окон, наравне с дескрипторами элементов управления в диалоговых окнах. Приложение устанавливает идентификатор для дочернего окна, присваивая значение идентификатора параметру
Хотя функция GetDlgCtrlID может вернуть значение в случае, если параметр
См . также
CreateWindow, CreateWindowEx, GetDlgItem .
Мэйлслоты
CreateMailslot
Функция CreateMailslot создает мэйлслот с указанным именем и возвращает дескриптор, который мэйлслотовый сервер может использовать для выполнения операций над мэйлслотом. Мэйлслот локален относительно компьютера, который его создал. Если мэйлслот с указанным именем существует, то происходит ошибка.
HANDLE CreateMailslot (
LPCTSTR
DWORD
DWORD
LPSECURITY_ATTRIBUTES
// на структуру безопасности
);
Параметры
\\.\mailslot\[path]name
Поле name должно быть уникальным. Имя может включать множественные уровни псевдодиректорий, разделенных символами обратного слэша. Например, правильными именами являются \\.\ mailslot \ example_mailslot_name и \\.\mailslot\abc\def\ghi .
0 - функция возвращает управление немедленно, если в мэйлслоте отсутствует сообщение. (Система не трактует немедленное возвращение как ошибку.)
MAILSLOT_WAIT_FOREVER - ждет до тех пор, пока не придет сообщение.
Величина тайм-аута применяется ко всем последующим операциям чтения и всем унаследованным дескрипторам мэйлслота.
Windows NT : Член
Windows 95: Член
Возвращаемые значения
В случае успеха возвращается дескриптор мэйлслота.
В случае неудачи возвращается INVALID_HANDLE_VALUE. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .
Комментарии
Мэйлслот существует до тех пор, пока:
Последний (возможно, унаследованный или дублированный) дескриптор не закрыт функцией CloseHandle .
Процесс, владеющий последним (возможно, унаследованным или дублированным) дескриптором, существует.
И Windows NT, и Windows 95 используют второй метод для разрушения мэйлслотов.
Для записи сообщения в мэйлслот процесс использует функцию CreateFile , указав имя мэйлслота в одном из следующих форматов: