2010-01-17 10 views
19

Napotkałem to po raz pierwszy i nie znalazłem dedykowanej strony na msdn. Co oznacza APIENTRY?Co robi APIENTRY?

+0

Pokaż trochę * kontekst *. Skopiuj i wklej kod, z którego korzystałeś. To prawdopodobnie makro; czy spojrzałeś na jego definicję? –

+0

To było w punkcie wejścia biblioteki DLL: BOOL APIENTRY DllMain (UCHWYT HModule, DWORD ul_reason_for_call, LPVOID lpReserved) – lhj7362

Odpowiedz

17

APIENTRY to alias dla WINAPI.

Sam WINAPI jest definicją typu calling convention używanego do wywołań interfejsu Windows API, stdcall.

Zasadniczo wyjaśnia to kompilatorowi sposób obsługi stosu i argumentów podczas wywoływania tej funkcji. Zazwyczaj nie musisz się tym martwić, chyba że tworzysz wskaźniki funkcji dla tego typu funkcji.

9

To tylko #define dla WINAPI, który jest standardową dekoracją dla systemu Windows.

#define APIENTRY WINAPI 
+0

Myślę, że WINAPI jest również zdefiniowany gdzieś? Jaki jest typ WINAPI? – RajSharma

+0

@RajSharma #define WINAPI __stdcall – Zebrafish