по поводу оригинальности
Данный текст немного сгенерирован chat-gpt 3.5
Но большая часть текста - моя
Если вы читаете эту статью - значит вы уже подучили с++ и интересуетесь разработкой под Windows
Следующая часть будет уже сложнее.
WinAPI (Windows Application Programming Interface) является набором функций и процедур, предоставляемых операционной системой Windows для разработки приложений. В этой статье мы рассмотрим основные принципы работы с WinAPI.
WinAPI обеспечивает доступ к функциям операционной системы Windows, таких как создание окон, управление ресурсами, работа с файлами, реагирование на события и еще многое другое. Чтобы начать разработку приложений с использованием WinAPI, необходимо знать несколько основных понятий и функций.
Основным элементом приложения, создаваемого с помощью WinAPI, является окно(не всегда). Для создания окна необходимо определить его характеристики, такие как размер, положение на экране и обработчик событий. Обработчик событий позволяет приложению реагировать на действия пользователя, например, нажатие кнопки мыши или нажатие клавиши.
После создания окна приложение переходит в цикл обработки сообщений, который прослушивает и обрабатывает события которые происходящие в окне. В цикле обработки сообщений мы можем реализовать логику нашего приложения.
WinAPI также предоставляет множество других функций и возможностей, таких как работа с ресурсами (иконки, курсоры, меню), рисование на экране, использование диалоговых окон и многое другое.
В этой статье мы рассмотрели лишь базовые принципы работы с WinAPI. Для изучения более сложных возможностей WinAPI рекомендуется обратиться к официальной документации и руководствам на других сайтах по программированию на WinAPI.
В заключение, WinAPI является мощным инструментом для разработки Windows-приложений. Он предоставляет разработчикам доступ к функциям операционной системы Windows и позволяет создавать приложения для операционных систем Windows в то время как UWP приложения может только на Windows 10+ запускаться.
И кстати: в рамках WinAPI вы также можете создавать приложения с использованием Direct3D , этот графический API разработанным для работы с трехмерной графикой. Direct3D позволяет разработчикам создавать и управлять 3D-графикой в WinApi-приложениях.
Автор: makwd
Комментарии (39)
Einherjar
18.06.2023 09:20+2А это вы писали две исчезнувшие статьи про введение в создание игровых движков описывающие создание пустого окна на winapi? Там хоть какая то информация была, а это вообще рыба-текст какой-то. В чем суть постить одно и то же третий раз, с каждым разом ухудшая?
pererat_rs
18.06.2023 09:20+1ну автор не вывез direct3d, и теперь он лишь low level winapi empty window senior developer)) я помню года 3 назад пытался direct3d игру сделать на плюсах, в итоге я написал игру - прыгающий шар с direct2d по туториалу индуса. я автору советую использовать opengl для движка, он легче)
Z55
18.06.2023 09:20+12Я думал это вступление, а это оказывается вся статья. В чём её смысл? Ещё и списанная у чатгпт...
Mox
18.06.2023 09:20+5Честно говоря опасаюсь что скоро интернет будет завален подобными статьями.
Проблема здесь (на мой взгляд)в том, что здесь нет ни опыта автора, ни полезной информации.
Lex20
18.06.2023 09:20+1Это скоро наступило вчера. Вот ещё характерная статья https://habr.com/ru/articles/742314/
ZekaVasch
18.06.2023 09:20Сначала в интернет пришли smmщики и наполнили его однообразной копипастой с рекламой. Потом наполнение текстов автоматизировали нейросетями.
vvviperrr
18.06.2023 09:20+1давай уже классику бомби, как поменять имя кнопки пуск и сделать убегающую от курсора кнопку
rezdm
18.06.2023 09:20+5"Вот и выросло поколение".
Когда-то "библией winapi разработки" были книжки Рихтер, Solomon&Russinovich. Полагаю, что и сейчас можно взять теперь уже древнюю книжку Рихтера и спокойно шаг за шаком повторить начала из книги, или прямо мсдн https://learn.microsoft.com/en-us/windows/win32/learnwin32/winmain--the-application-entry-point
А эта "заметка" не тянет даже на intro в тему.starfair
18.06.2023 09:20А я бы порекомендовал еще Фень Юань "Программирование графики на Windows". Ничего более глубокого и толкового описывающего внутреннюю структур работы графики на WinAPI я не встречал с тех пор! Подробно, но не занудно и очень глубоко.
vilgeforce
18.06.2023 09:20Я не очень понимаю при чем тут C++, ведь WinAPI оно сишечное. Если, конечно, COM не брать
makwd Автор
18.06.2023 09:20-2винапи на с++ и есть,ну ладно
vilgeforce
18.06.2023 09:20+3При этом интерфейс (буква I в слове API) - сишный. Параметры API-функций - не объекты, в лучшем случае структуры. Классы есть при работе с технологией COM.
Второй аргумент: name mangling в виндовых DLL - сишный. Если загрузить kernel32.dll в IDA, она подтащит символы с микрософтовских серверов и покажет "истинные" имена функций. И будет там _GetShortPathNameW@12 - это не плюсовый mangling, а сишный.
Хотя, некоторые внутренние функции, судя опять же по манглингу, писались на плюсах.
pererat_rs
18.06.2023 09:20Я посчитал и тут примерно половина статьи с акцентом чатгпт, а остальное видно что писал автор. По тому что он пишет можно понять что он только знакомится с винапи, и не знает что-то кроме окон.
odisseylm
18.06.2023 09:20+2Ээээ... Я так понимаю никакого модератора статей на хабре нет ((( Печалька, дети какую-то херню постят (про COM аналогичная статья была месяц назад, правда с картинкой)
Автор или модератор, удалите этот треш, пожалуйста!
YegorP
А можно diff того, что было сгенерировано, и того, что было в итоге опубликовано?
Eugeny1987
вероятно, эта часть текста его
pererat_rs
AUTHOR: ChatGPT