Windows API ( engelska applikationsprogrammeringsgränssnitt ) är det allmänna namnet för en uppsättning grundläggande funktioner i applikationsprogrammeringsgränssnitt för operativsystem i Microsofts Windows -operativsystem från Microsoft Corporation . Ger ett direkt sätt för användarapplikationer att interagera med Windows operativsystem . För att skapa program som använder Windows API släpper Microsoft ett mjukvaruutvecklingskit kallat Platform SDK som innehåller dokumentation, en uppsättning bibliotek , verktyg och andra utvecklingsverktyg.
Windows API är utformat för att användas i C- språket för att skriva applikationsprogram som är utformade för att köras under MS Windows-operativsystemet. Att arbeta genom Windows API är det närmaste sättet att interagera med operativsystemet från applikationsprogram. En lägre åtkomstnivå , som endast krävs för enhetsdrivrutiner , tillhandahålls genom Windows-drivrutinsmodellen i nuvarande versioner av Windows .
Windows API är en uppsättning funktioner, datastrukturer och numeriska konstanter som följer konventionerna för C-språket. Samtidigt skiljer sig konventionen för att anropa funktioner från cdecl för C: Windows API använder stdcall ( winapi ). Alla programmeringsspråk som kan anropa sådana funktioner och använda sådana datatyper i program som körs på Windows kan använda detta API. I synnerhet är dessa C++ , C# , Pascal , Visual Basic och många andra.
För att underlätta programmering under Windows har Microsoft och tredjepartsutvecklare gjort många försök att skapa bibliotek och programmeringsmiljöer som delvis eller helt döljer funktionerna i Windows API från programmeraren och tillhandahåller en eller annan del av dess kapacitet i en mer bekväm form . Speciellt erbjöd Microsoft själva vid olika tillfällen biblioteken Active Template Library (ATL) / Windows Template Library (WTL), Microsoft Foundation Classes (MFC), .Net / WinForms / WPF , TXLib. Borland (nu Embarcadero, dess efterträdare för utvecklingsverktyg) erbjöd OWL och VCL . Det finns plattformsoberoende bibliotek som Qt , Tk och många andra. En stor del av dessa bibliotek är inriktade på att underlätta GUI-programmering .
För att underlätta porteringen av program baserade på Windows API till andra plattformar har Wine library gjorts .
med GUI-element | Verktygssatser (uppsättningar)|||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
låg nivå |
| ||||||||||||||||||||||||||
hög nivå |
|