API

Sinn und Zweck der Microsoft® Windows®-API (Application Programming Interface) ist es, Ihnen das Entwickeln von Programmen zu ermöglichen, die mit dem Windows-Betriebssystem und dessen Benutzeroberfläche konsistent sind. Statt den erforderlichen Code zum Erstellen von Komponenten des Windows-Betriebssystems zu schreiben, wie z. B. Formulare, Befehlsschaltflächen und Menüs, können Sie die entsprechenden Funktionen in der Windows-API aufrufen und diese Komponenten durch das Betriebssystem erstellen lassen. Da die Windows-API eine komplexe Sammlung von Funktionen ist, bietet Ihnen diese Dokumentation sowohl einen Ausgangspunkt als auch bei Bedarf weiterführende Hinweise auf andere Ressourcen. Die Kenntnisse, die Sie hier zum Aufrufen von Windows-API-Funktionen erwerben, können Sie auch beim Aufrufen von DLL-Funktionen in anderen DLLs einsetzen.

APIs werden grundsätzlich für C- und C++-Programmierer zum Erstellen von Windows-Anwendungen geschrieben, doch können die Funktionen in einer DLL auch mit anderen Programmiersprachen aufgerufen werden, einschließlich VBA. Da die meisten DLLs in erster Linie für C- und C++-Programmierer geschrieben und dokumentiert werden, kann das Aufrufen einer DLL-Funktion etwas anders aussehen als das Aufrufen einer VBA-Funktion. Für die Arbeit mit einer API muss bekannt sein, auf welche Weise Argumente an eine DLL-Funktion übergeben werden.

Vorsicht   Ihre Anwendung kann durch das Aufrufen der Windows-API und anderer DLL-Funktionen Schaden nehmen. Beim Aufrufen einer DLL-Funktion direkt aus dem Code heraus umgehen Sie einige der Sicherheitsmechanismen, die von VBA normalerweise zur Verfügung gestellt werden. Wenn Ihnen beim Definieren oder Aufrufen einer DLL-Funktion ein Fehler unterläuft (was jedem Programmierer einmal passieren kann), kann ein interner Anwendungsfehler (früher: "Allgemeine Schutzverletzung") ausgelöst werden. Daher sollten Sie vor dem Ausführen von Code Ihr Projekt speichern und sich vergewissern, dass Ihnen das zum Aufrufen von DLL-Funktionen zugrunde liegende Prinzip geläufig ist.