-1 / 25 / 4
Регистрация: 27.11.2017
Сообщений: 375
|
||||||||||||||||
1 | ||||||||||||||||
Различные хэндлы05.04.2018, 18:04. Показов 744. Ответов 4
Метки нет (Все метки)
Как известно все хэндлы, которые используются в win api есть не что иное как указатели на void.
Почему же несмотря на это иногда требуется приведение одного хэндла к другому? Например при заполнении структуры оконного класса встречается такая инструкция:
Тем не менее, вот такая инструкция уже не работает:
0
|
05.04.2018, 18:04 | |
Ответы с готовыми решениями:
4
Хэндлы hProcess и hThread Как получить хэндлы системного процесса? Хэндлы у Fire Monkey Хэндлы или потоки в C++11 |
06.04.2018, 11:24 | 2 | |||||
это с чего вы так решили?
это
0
|
-1 / 25 / 4
Регистрация: 27.11.2017
Сообщений: 375
|
||||||
06.04.2018, 16:11 [ТС] | 3 | |||||
А можно не вопросом.
Если знаете, то ответьте более конкретно и понятно. Из Вашего ответа пока ничего не понятно. Добавлено через 2 часа 52 минуты Понятно, ответить слабо. Но кое что я понял. На самом деле хэндлы - это указатели на некие структуры, определенный в win api. Их единственное назначение быть переданными тем или иным системным функциям. Через хэндлы нельзя получать доступ к полям структуры, на которые они указывают. Одним словом, это даже не совсем указатели, а скорее некая единообразная форма представления того, что имеется в программе. Конечно, возникает масса вопросов по тому как одни из них пребразовываются в другие, и тем более иногда допускается преобразование целых значений в хэндлы, как например:
0
|
07.04.2018, 12:45 | 4 |
с такими комментариями вам никто отвечать не будет.
а мысль, о том, что я всё это время не заходил на форум вам в голову приходила? или я что тут должен сидеть днями и ночам и мониторить ваши вопросы? WinAPI здесь не причём. если утрировать WinAPI это обертка над NativeAPI, которая в свою очередь обертка над системными вызовами. по сути все системные вызовы это сервисные таблицы, а хендлы это не указатели, а индексы в этих таблицах. хендл может быть как адресом на структуру или объект ядра, так и чем-то другим (void в данном случае служит просто типом передачи данных).
0
|
-1 / 25 / 4
Регистрация: 27.11.2017
Сообщений: 375
|
|
07.04.2018, 13:15 [ТС] | 5 |
Ну хорошо допустим, что это так.
Но правила работы с этими штуками (как то, например, правила преобразования одних хэндлов к другим и тому подобное) должны же где-то быть, или Microsoft забила на это?
0
|
07.04.2018, 13:15 | |
07.04.2018, 13:15 | |
Помогаю со студенческими работами здесь
5
Delphi xe7 multi-device Form , хэндлы окон и работа с ними Составить алгоритм решения ребуса РАДАР = (Р + А + Д)4 (различные буквы обозначают различные цифры, старшая — не 0). Составить алгоритм решения ребуса РАДАР=(Р+А+Д)^4 (различные буквы означают различные цифры, старшая - не 0). Составить три блочные цветовые схемы, используя различные цветовые стили дизайна и различные композиции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |