Windows API ( anglicky application programming interfaces ) je obecný název pro sadu základních funkcí aplikačních programovacích rozhraní pro operační systémy operačních systémů Microsoft Windows společnosti Microsoft Corporation . Poskytuje uživatelským aplikacím přímý způsob interakce s operačním systémem Windows . K vytváření programů, které používají rozhraní Windows API , vydává společnost Microsoft sadu pro vývoj softwaru nazvanou Platform SDK , která obsahuje dokumentaci, sadu knihoven , nástroje a další vývojové nástroje.
Windows API je navrženo pro použití v jazyce C pro psaní aplikačních programů určených pro provoz pod operačním systémem MS Windows. Práce přes Windows API je nejbližší způsob interakce s operačním systémem z aplikačních programů. Nižší úroveň přístupu , vyžadovaná pouze pro ovladače zařízení , je poskytována prostřednictvím modelu Windows Driver Model v aktuálních verzích Windows .
Windows API je sada funkcí, datových struktur a číselných konstant, které se řídí konvencemi jazyka C. Zároveň se konvence pro volání funkcí liší od cdecl pro C: Windows API používá stdcall ( winapi ). Toto API mohou používat všechny programovací jazyky schopné volat takové funkce a pracovat s takovými datovými typy v programech běžících na Windows. Konkrétně se jedná o C++ , C# , Pascal , Visual Basic a mnoho dalších.
Pro usnadnění programování pod Windows podnikli Microsoft a vývojáři třetích stran mnoho pokusů o vytvoření knihoven a programovacích prostředí, které částečně nebo úplně skryjí funkce Windows API před programátorem a poskytují jednu nebo druhou část jeho schopností v pohodlnější formě. . Konkrétně Microsoft sám v různých dobách nabízel knihovny Active Template Library (ATL) / Windows Template Library (WTL), Microsoft Foundation Classes (MFC), .Net / WinForms / WPF , TXLib. Borland (nyní Embarcadero, jeho nástupce vývojového nástroje) nabídl OWL a VCL . Existují multiplatformní knihovny jako Qt , Tk a mnoho dalších. Velká část těchto knihoven je zaměřena na usnadnění programování GUI .
Pro usnadnění přenosu programů založených na Windows API na jiné platformy byla vytvořena knihovna Wine .
prvků GUI | Toolkity (sady)|||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
na nízké úrovni |
| ||||||||||||||||||||||||||
vysoká úroveň |
|