Windows API
Windows Api (application programming interfaces) — загальне найменування для цілого набору базових функцій інтерфейсів програмування застосунків операційних систем сімейства Windows корпорації Майкрософт. Є найпрямішим способом взаємодії застосунків з Windows.
Для створення програм, що використовують Windows API, Майкрософт випускає SDK, який називається Platform SDK і містить документацію, набір бібліотек, утиліт і інших інструментальних засобів.
Загальні відомості
Windows API був спочатку спроєктований для використання в програмах, написаних на мові C (або 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 реалізовані в DLL kernel32.dll і advapi32.dll; базові модулі GUI — в user32.dll і gdi32.dll. Win32 з'явився разом з Windows NT і потім був перенесений (у декілька обмеженому вигляді) в системи серії Windows 9x. У сучасних версіях Windows, що походять від Windows NT, роботу Win32 забезпечують два модулі: csrss.exe (client/server Runtime Server Subsystem), що працює в призначеному для користувача режимі, і win32k.sys у режимі ядра.
- win64 — 64-розрядна версія Win32, що містить додаткові функції для використання на 64-розрядних комп'ютерах. Win64 API можна знайти тільки в 64-розрядних версіях ОС сімейства Windows.
Повний алфавітний список технологій, доступних через Windows API
- Access Control
- Active Accessibility
- Active Directory
- Active Directory Services Interface (ADSI)
- Active Server Pages (ASP)
- ActiveX Data Objects (ADO)
- Authorization Manager
- Automation
- Background Intelligent Transfer Service (BITS)
- Bluetooth
- CDO
- Certificate Enrollment Control
- Certificate Services
- Collaboration Data Objects
- COM
- COM+
- Common Controls
- Cryptography
- Debugging and Error Handling
- Device I/O
- Distributed File System (Dfs)
- DLLs, Processes, and Threads
- Domain Name System (DNS)
- Dynamic Host Configuration Protocol (DHCP)
- Extensible Authentication Protocol (EAP)
- Extensible Markup Language (XML) и парсер MSXML
- Fax Service
- Group Policy
- HTTP
- ICS и ICF
- Image Color Management (ICM)
- 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.
- Віконний клас
- svchost.exe
- WinMain
- Ресурси (Windows)
Статті
- Spinellis Diomidis. A critique of the Windows application programming interface // Computer Standards & Interfaces. — 1998. — Т. 20, вип. 1 (November). — С. 1–8. — DOI: .
Посилання
- windows api programming — Форум клубу програмістів
- Platform SDK: Windows API — розділ Windows API в бібліотеці MSDN