windows-nt/Source/XPSP1/NT/base/wow64/setup/boot/genthk.h
2020-09-26 16:20:57 +08:00

45 lines
1.3 KiB
C

/***************************************************************************
**
** File: genthk.h
** Purpose: Prototypes for Generic Thunk API's.
** Notes:
** These API's (exported from the NT Kernel) allow 16-bit
** apps to call 32-bit DLL's when running under Windows NT WOW
** (Windows on Windows). This interface is called 'Generic
** Thunking,' not to be confused with Win32s Universal Thunks,
** which provides this functionality under Window 3.1.
**
****************************************************************************/
#ifndef GENTHK_H
#define GENTHK_H
#ifdef __cplusplus
extern "C" { /* Assume C declarations for C++ */
#endif
DWORD FAR PASCAL LoadLibraryEx32W ( LPCSTR, DWORD, DWORD );
DWORD FAR PASCAL GetProcAddress32W ( DWORD, LPCSTR );
DWORD FAR PASCAL GetVDMPointer32W ( LPVOID, UINT );
BOOL FAR PASCAL FreeLibrary32W ( DWORD );
/* NOTE: CallProc32W can take a variable number of
* parameters. The prototype below is for calling
* a Win32 API which takes no arguments.
*/
DWORD FAR PASCAL CallProc32W ( LPVOID, DWORD, DWORD );
typedef DWORD (FAR PASCAL * PFNGETVERSION32) ();
#define CallGetVersion32(hProc) \
((*((PFNGETVERSION32) hProc)) ())
#ifdef __cplusplus
} /* End of extern "C" { */
#endif
#endif /* GENTHK_H */