Как изменился Windows API за последние 10 лет?
Меня интересует, как Windows API изменился за последние 10 лет по сравнению с Windows 98 и Windows 2000? Какие интересные вызовы API были добавлены, что вы знаете? Также люди все еще пишут что-нибудь в API?
Сейчас я изучаю все, что могу, о программировании для Windows, и мне действительно интересно это. Поскольку книги не объясняют все, они просто объясняют небольшое подмножество всех API. И я хочу знать о самых современных вещах в Windows API.
Итак, мой общий вопрос: где я могу найти подробный отчет о различиях в WinAPI для версий 98, 200, Xp, Vista и 7?
3 ответа
За последние десять лет в Win32 API произошли значительные изменения. Эта ссылка дает вам изменения API между XP & Vista и Vista & Windows 7. Это большой список.
Все приложения в Windows используют API, либо напрямую (вызов C/C++ в существующие объекты Win32 API и COM), либо косвенно через инфраструктуру, такую как MFC или.NET.
Реальный ответ заключается в том, что основная логика не изменилась. Вы можете взять нетривиальный исходный код Windows 1.0 и скомпилировать его для Windows 7 с минимальными изменениями. У вас все еще есть все те же основные строительные блоки:
- создание оконного класса;
- создание окон;
- цикл сообщений;
- оконная процедура;
- ресурсы для диалогов и меню;
- стили окон;
- многое другое
Это правда, что было добавлено много новых API, но самые распространенные все еще есть. Вы делаете то же самое таким же образом.
Хороший способ узнать о некоторых новых API, а также о том, почему и как они были написаны, можно прочитать в блогах различных разработчиков Microsoft, которые работают на Windows или связанных системах. Некоторые примеры:
Марк Руссинович - http://blogs.technet.com/b/markrussinovich/
Рэймонд Чен - http://blogs.msdn.com/b/oldnewthing/
Ларри Остерман - http://blogs.msdn.com/b/larryosterman/
Все еще есть люди, пишущие приложения на чистом Win32, но, возможно, их не так много, так как большинство приложений не нужно писать на этом уровне и обычно можно писать быстрее на более высоком уровне. Многие приложения.Net и т. Д. По-прежнему будут вызывать различные методы API Windows, однако, когда.Net Framework содержит необходимые им функции.