Windows API | это... Что такое Windows API? (original) (raw)
Windows API (англ. application programming interfaces) — общее наименование целого набора базовых функций интерфейсов программирования приложений операционных систем семейств Microsoft Windows корпорации «Майкрософт» и совместимой с ними свободной бесплатной операционной системы ReactOS. Является самым прямым способом взаимодействия приложений с Windows и ReactOS. Для создания программ, использующих Windows API, «Майкрософт» выпускает комплект разработчика программного обеспечения, который называется Platform SDK, и содержит документацию, набор библиотек, утилит и других инструментальных средств для разработки.
Содержание
- 1 Общие сведения
- 2 Версии
- 3 Технологии, доступные через Windows API
- 4 См. также
- 5 Ссылки
- 6 Литература
Общие сведения
Windows API был изначально спроектирован для использования в программах, написанных на языке Си или C++. Работа через Windows API — это наиболее близкий к системе способ взаимодействия с ней из прикладных программ. Более низкий уровень доступа, необходимый только для драйверов устройств, в текущих версиях Windows предоставляется через Windows Driver Model.
Версии
- Win16 — первая версия Windows API для 16-разрядных версий Windows. Изначально назывался просто Windows API, затем стал называться Win16 для отличия от Win32.
- Win32s — подмножество Win32, устанавливаемое на семейство 16-разрядных систем Windows 3.x, и реализующее ограниченный набор функций Win32 API для этих систем.
- Win32 — 32-разрядный API для современных версий Windows. Самая популярная ныне версия. Базовые функции этого API реализованы в динамически подключаемых библиотеках
kernel32.dll
иadvapi32.dll
; базовые модули графического интерфейса пользователя — вuser32.dll
иgdi32.dll
. Win32 появился вместе с Windows NT и затем был перенесён в несколько ограниченном виде в системы серии Windows 9x. В современных версиях Windows, происходящих от Windows NT, работу Win32 GUI обеспечивают два модуля:csrss.exe
(процесс исполнения клиент-сервер), работающий в пользовательском режиме, иwin32k.sys
в режиме ядра. Работу же системных Win32 API обеспечивает ядро —ntoskrnl.exe
. - Win64 — 64-разрядная версия Win32, содержащая дополнительные функции для использования на 64-разрядных компьютерах. Win64 API можно найти только в 64-разрядных версиях Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows Server 2008 R2, Windows 7 и Windows 8.
Технологии, доступные через Windows API
Алфавитный список технологий, доступных через Windows API:
- Система контроля и управления доступом.
- Microsoft Active Accessibility.
- Active Directory.
- Active Server Pages.
- ActiveX.
- Автоматизация.
- Фоновая интеллектуальная служба передачи (BITS).
- Bluetooth.
- CDO.
- Certificate Enrollment Control.
- Certificate Services.
- Collaboration Data Objects.
- Component Object Model
- COM Plus.
- Common Controls.
- Криптография.
- Debugging and Error Handling.
- Device I/O.
- Распределённая файловая система.
- DLL, процессы и многопоточность.
- Domain Name System.
- Dynamic Host Configuration Protocol (DHCP).
- Extensible Authentication Protocol (EAP).
- Extensible Markup Language (XML) и парсер MSXML.
- Fax Service.
- Групповая политика.
- HTTP.
- ICS и ICF.
- Image Color Management (ICM)
- Image Mastering API (IMAPI)
- Indexing Service
- Infrared Data Association (IrDa)
- Internet Authentication Service (IAS)
- Internet Connection Sharing and Firewall (ICSF)
- Internet Explorer
- Internet Information Services (IIS)
- Internet Protocol Helper (IP Helper)
- Interprocess Communications
- Lightweight Directory Access Protocol (LDAP)
- LSA Authentication
- LSA Policy
- Memory Management
- Message Queuing (MSMQ)
- Messaging Application Programming Interface (MAPI)
- Microsoft .NET Passport
- Microsoft Agent
- Microsoft Data Access Components (MDAC)
- Microsoft Interface Definition Language (MIDL)
- Microsoft Management Console (MMC)
- Microsoft Transaction Server (MTS)
- Multicast Address Dynamic Client Allocation Protocol (MADCAP)
- Multicast Group Manager
- National Language Support
- NetMeeting
- NetShell
- Network Load Balancing Provider
- Network Management
- Network Monitor
- Network Provider API
- OLE DB
- OLE DB Provider for Internet Publishing
- OnNow
- Open Database Connectivity (ODBC)
- OpenGL
- Password Filters
- PC Health
- Performance Monitoring
- Plug and Play и Universal Plug and Play
- Power Management
- Quality of Service (QoS)
- Real-time Communications (RTC) Client //ссылка ведет не на ту статью
- Remote Access Service (RAS)
- Remote Procedure Call (имеется в виду служба RPC Service)
- Removable Storage Manager (RSM)
- Routing and Remote Access Service (RRAS)
- Routing Table Manager Version 1 (RTMV1)
- Routing Table Manager Version 2 (RTMV2)
- Security Support Provider Interface (SSPI)
- Server Cluster API
- Server Data Objects (SDO)
- Service Security Attachments
- Setup API
- Shell (имеется в виду Explorer Shell)
- Side-by-side Assemblies
- Simple Network Management Protocol (SNMP)
- Smart Card
- Still Image
- Storage и Structured Storage
- Synchronization Manager
- System.DirectoryServices
- System Event Notification Service (SENS)
- System Restore
- Tablet PC
- Task Scheduler
- Telephony Application Programming Interface (TAPI) 2.2
- Telephony Application Programming Interface (TAPI) 3
- Telephony Service Provider Interface (TSPI и MSPI)
- Terminal Services
- Text Services Framework
- Unicode (и MSLU)
- Universal Description, Discovery, and Integration (UDDI)
- Video for Windows
- Windows Clustering
- Windows File Protection
- Windows GDI
- Windows GDI+
- Windows Image Acquisition (WIA)
- Windows Installer
- Windows Management Instrumentation (WMI)
- Windows Multimedia
- Windows Sockets
- Windows System Information
- Windows User Interface
- Winlogon и Gina
- WinSNMP
См. также
- DirectX
- Microsoft .NET
- Wine — свободная кроссплатформенная реализация Windows API.
- Window class
- svchost.exe
- WinMain
Ссылки
- MSDN Windows API
- Пакеты SDK
- windows api programming — форум клуба программистов
- Краткий справочник функций WinAPI на русском языке
Литература
- Гэри Неббет Справочник по базовым функциям API Windows NT/2000 = Windows NT/2000 Native API Reference. — М.: «Вильямс», 2002. — С. 528. — ISBN 1-57870-199-6
Программные интерфейсы и фреймворки Microsoft Windows | |
---|---|
Графика | Проводник Windows • DirectX • Direct3D • GDI • Windows Presentation Foundation • Windows Color System • Windows Image Acquisition • Windows Imaging Component |
Звук | DirectSound • DirectMusic • XACT • Speech API • MME |
Мультимедиа | DirectShow • Windows Media • Media Foundation |
Веб | MSHTML • MSXML • Платформа RSS для Windows • JScript • ActiveX • XMLHttpRequest • Гаджеты |
Доступ к данным | Компоненты Microsoft Data Access • Extensible Storage Engine • ADO.NET • Sync Framework • Jet-механизм |
Сети | Winsock (LSP) • Filtering Platform • NDIS • Windows Rally • Сервис фоновой интеллектуальой передачи данных • P2P API |
Коммуникации | TAPI |
Администрирование | Консоль Win32 • Windows Script Host • Инструментарий управления Windows • PowerShell • Планировщик задач • Offline Files • Теневое копирование • Windows Installer • Диспетчер ошибок Windows • Журнал событий Windows |
Модель компонентов | COM • COM+ • DCOM • .NET Framework |
Библиотеки | Microsoft Foundation Classes (MFC) • Active Template Library (ATL) • Windows Template Library (WTL) • Base Class Library (BCL) |
Разработка драйверов | Windows Driver Model • Windows Driver Foundation (KMDF • UMDF) |
Безопасность | CryptoAPI (CAPICOM) • Windows CardSpace • Data protection API • Security Support Provider Interface |
.NET | .NET Framework • ASP.NET • ADO.NET • .NET Remoting • Windows Presentation Foundation • Windows Workflow Foundation • Windows Communication Foundation • Windows CardSpace • XNA Framework • Silverlight • Библиотека параллельного программирования |
Межпроцессноевзаимодействие | Dynamic Data Exchange (DDE) • MSRPC • Именованные каналы |
Текст иподдержка языков | Framework Текстовых сервисов • Объектная модель текстов • Редактор метода ввода • Языковые пакеты • Многоязычный интерфейс |
Игры | XNA Framework • DirectX |
Инструменты разработки элементов графического интерфейса | |
---|---|
Низко-уровневые | Macintosh Toolbox/Carbon • Windows API • Intrinsics • Intuition • Xlib |
Высоко-уровневые | Amiga OS BOOPSI • Magic User Interface • Zune • ReAction GUI Mac OS и Mac OS X Cocoa • MacApp • MacZoop • PowerPlant Microsoft Windows Microsoft Foundation Classes • Windows Template Library • SmartWin++ • Object Windows Library • Visual Component Library • Windows Forms • Windows Presentation Foundation UNIX, под X Xaw • Motif • LessTif • InterViews Кросс-платфор-менные На основе Flash ASWing • Adobe Flex • Gnash • SWF2EXE Software На основе XML,AJAX или SVG Ample SDK • CougarXML • Dojo Toolkit • Echo • ExtJS • GladeXML • Google Web Toolkit • jQuery • Lively Kernel • MooTools • Pyjamas • qooxdoo • Rialto Toolkit • script.aculo.us • XML User Interface • XUL • Yahoo! UI Library На основе Java Abstract Window Toolkit • Swing • Standard Widget Toolkit • Qt Jambi На основеC или C++ Agar • CEGUI • Component Library for Cross Platform • dlib C++ Library • FLTK • FOX toolkit • OpenGL User Interface Library • GTK+ • IUP • Juce • JX Application Framework • Qt • TnFOX • Visual Component Framework • wxWidgets • YAAF • XForms • XVT • Ultimate++ На основе Common Lisp CAPI • Common Graphics • CLIM • McCLIM • Garnet На основе Pascal IP Pascal • Lazarus • fpGUI • FireMonkey На основе Python Pyjamas • PyQt • PyGTK • PyGUI • wxPython • PySide • Tkinter На основе Objective C GNUstep На основе других Tk |