Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*****************************************************************************
* * DiThunk.h * * Copyright (c) 1997-1999 Microsoft Corporation. All Rights Reserved. * * Abstract: * * Template thunks for Windows 95 device manager. * *****************************************************************************/ /*****************************************************************************
* * dithunk.c * *****************************************************************************/
/***************************************************************************
* * @doc INTERNAL * * @struct KERNELPROCADDR | * * Kernel procedure addresses. * * Careful! This must match dithunk.c::c_rgpszKernel32. * ***************************************************************************/
typedef struct KERNELPROCADDR { /* kpa */
/* By ordinal */ HINSTANCE (NTAPI *LoadLibrary16)(LPCSTR); BOOL (NTAPI *FreeLibrary16)(HINSTANCE); FARPROC (NTAPI *GetProcAddress16)(HINSTANCE, LPCSTR);
/* By name */ LPVOID (NTAPI *MapLS)(LPVOID); void (NTAPI *UnMapLS)(LPVOID); LPVOID (NTAPI *MapSL)(LPVOID); LPVOID (NTAPI *MapSLFix)(LPVOID); void (NTAPI *UnMapSLFixArray)(int, LPVOID);
/* Warning: GetKernelProcAddresses assumes that QT_Thunk is last */ void (__cdecl *QT_Thunk)(void);
} KERNELPROCADDR;
extern KERNELPROCADDR g_kpa;
int __cdecl TemplateThunk(FARPROC fp, PCSTR pszSig, ...);
#define MAKELP(sel, ofs) (PV)MAKELPARAM(ofs, sel)
BOOL EXTERNAL Thunk_GetKernelProcAddresses(void);
HINSTANCE EXTERNAL Thunk_GetProcAddresses(FARPROC *rgfp, LPCSTR *rgpsz, UINT cfp, LPCSTR pszLibrary);
|