В этой статье рассмотрим технологии помогающие разработке приложений для Windows, а именно: Windows API, технологию COM, Windows Runtime и NET Framework.

Windows API

Microsoft Windows API — интерфейс системного программирования для операционных систем Windows. Необходим для того, чтобы написанные приложения могли взаимодействовать с операционной системой.

Windows API

Windows API состоит из функций написанных на языке C. Эти функции можно вызывать используя другие языки, например C++. Работа через Windows API — это наиболее близкий к операционной системе способ взаимодействия с ней.

Для облегчения программирования сделали множество библиотек и сред программирования, которые предоставляют его возможности в более удобном виде. Microsoft выпускает специальный комплект разработчика для создания программ, использующих Windows API, который называется Platform SDK.

Несмотря на то, что язык С не является объектно-ориентированным языком программирования, Windows API и сама система Windows, были описаны как объектно-ориентированные.

Windows API представляет собой множество функций, которые могут быть разбиты на следующие категории:

  • Базовые службы (Base Services);
  • Службы компонентов (Component Services);
  • Службы пользовательского интерфейса (User Interface Services);
  • Графические и мультимедийные службы (Graphics and Multimedia Services);
  • Обмен сообщениями и совместная работа (Messaging and Collaboration);
  • Сеть (Networking);
  • Веб-службы (Web Services).

Windows API не стоит на месте, а постепенно развивается. В API для Windows 1.0 было менее 450 функций, а современные версии насчитывают тысячи функций. Microsoft пытается сохранить обратную совместимость, что усложняет код, но старые приложения продолжают работать с новым Windows API.

Технологии, доступные через Windows API:

  • Component Object Model (COM) — создавалась чтобы приложения могли взаимодействовать друг с другом. Например документ Word мог содержать диаграмму Excel.
  • Microsoft Active Accessibility (MSAA) — технология позволяющая писать приложения, которые облегчают взаимодействие с компьютером людей с ограниченными физическими возможностями. Например экранной лупы, приложения для чтения текста с экрана и других. Работает используя технологию COM.
  • ActiveX — технология, которая позволяет помещать внутрь документа программу. ActiveX использовался в WEB браузере Internet Explorer, для открытия сайтов с такими программами. Работает используя технологию COM.
  • DLL — динамическая библиотека, позволяющая многократное применение различными приложениями.

Технология COM (Component Object Model)

Если Windows API используется для взаимодействия приложений с системой, то для взаимодействия приложений друг с другом используется технология COM.

Написанные по этой технологии программы могут быть либо EXE либо DLL файлами. При этом они могут быть написаны на разных языках, а поставляются в двоичном виде. Называются такие файлы com-объектами.

Существуют 2 вида приложений, которые взаимодействуют с com-объектами:

  • Клиент COM. Такое приложение подключается к com-объекту и получает некоторую функциональность другого приложения или операционной системы.
  • Сервер COM. Это приложение предоставляет дополнительную функциональность, так как содержит com-объект.

Com объекты есть как у прикладных приложений, так и у самой операционной системы Windows.

Все вышеупомянутое можно рассмотреть на этом рисунке:

Технология COM

Создавая com-объекты для своего приложения программисты должны создать для него специальные интерфейсы. Эти интерфейсы используются другими приложениями чтобы подключаться к com-объектам.

В дальнейшем появилась технология DCOM, она позволила приложениям обращаться к COM объектам по сети.

Теперь приведу некоторые примеры работы приложений с com объектами:

  • документ Word может содержать диаграмму Excel или презентацию PowerPoint;
  • одна база 1С может обмениваться данными с другой базой 1С;
  • база 1С может выгружать данные в Excel.

Windows Runtime

В Windows 8 появился новый API — Windows Runtime (WinRT). Этот API состоит из сервисов предназначенных для разработчиков Windows Apps. Приложения Windows Apps подходят для разных устройств на базе Windows, например для настольных компьютеров, планшетов, или Xbox One. Windows Apps это новые приложения для Windows, старые приложения стали называть классическими приложениями Windows.

WinRT также основана на базе COM. Приложения написанные на C++, C#, JavaScript могут легко использовать WinRT.

NET Framework

Это обширный набор написанных фрагментов кода, созданный и поддерживающийся Microsoft, который программисты могут использовать, чтобы быстрее писать программы. Этот фреймворк является частью Windows и поставляются вместе с ней:

Windows 7NET Framework 3.5
Windows 8NET Framework 4.5
Windows 10NET Framework 4.6

При этом на старые системы можно устанавливать более свежие версии.

NET Framework берёт на себя все операции по отображению окон на экране. Программисту остаётся только вставить текст, продумать меню программы, задать поведение кнопок, когда на них нажимает пользователь и тому подобное.

Но приложения написанные с использованием определенной версии NET Framework невозможно запустить, если эта версия не установлена в вашей системе. Поэтому если у вас не запускается или не устанавливается какая-нибудь программа для Windows возможно у вас не установлена нужная версия NET Framework.

Вернуться к оглавлению

Сводка
Windows API
Имя статьи
Windows API
Описание
Microsoft Windows API - интерфейс системного программирования для операционных систем Windows. Необходим для того, чтобы написанные приложения могли взаимодействовать с операционной системой.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *