Thema: Delphi Was bedeutet stdcall?

Einzelnen Beitrag anzeigen

Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#2

Re: Was bedeutet stdcall?

  Alt 15. Apr 2004, 17:07
Es gibt verschiedene Möglichkeiten, wie man einer Funktion ihre Parameter übergibt,
und wie (oder ob überhaupt) der Stack für die aufgerufene Funktion eingerichtet werden soll.

Am meisten Verbreitung findet der sogenannte stdcall (="standard call").
Dabei wird das gemacht: Der Aufrufer legt die Parameter auf dem stack ab,
und die aufgerufene Funktion macht nachher den stack selbst wieder sauber und bringt ihn wieder in den Zustand,
den der Aufrufer hinterlassen hatte (die Parameter sind dann auch weg).

Diese Variante ist am performantesten, und bis auf zwei Funktionen (wsprintfA und wsprintfW)
nutzen sämtliche Win32 API - Funktionen diese Aufrufkonvention.
Thomas
  Mit Zitat antworten Zitat