mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 22:56:00 +00:00
an API test kit + win32k native API test app.
It does syscalls on ros by linking to w32kdll.dll On windows it uses syscall tables (only winxp sp2 available atm) svn path=/trunk/; revision=28106
This commit is contained in:
parent
24de999ac2
commit
603ac00e50
19 changed files with 2122 additions and 0 deletions
98
rostests/apitests/apitest.c
Normal file
98
rostests/apitests/apitest.c
Normal file
|
@ -0,0 +1,98 @@
|
||||||
|
#include "apitest.h"
|
||||||
|
|
||||||
|
void
|
||||||
|
OutputUsage(LPWSTR pszExe)
|
||||||
|
{
|
||||||
|
printf("\nUsage:\n\n");
|
||||||
|
printf("%ls <TestName> - perform individual test\n", pszExe);
|
||||||
|
printf("%ls all - perform all tests\n", pszExe);
|
||||||
|
printf("%ls status - create api status file\n", pszExe);
|
||||||
|
printf("%ls -r ... - perform regression testing\n", pszExe);
|
||||||
|
printf("\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
TestMain(LPWSTR pszExe)
|
||||||
|
{
|
||||||
|
INT argc, i, j;
|
||||||
|
LPWSTR *argv;
|
||||||
|
TESTINFO ti;
|
||||||
|
INT opassed, ofailed, orfailed;
|
||||||
|
BOOL bAll, bStatus;
|
||||||
|
|
||||||
|
ti.bRegress = FALSE;
|
||||||
|
bAll = FALSE;
|
||||||
|
bStatus = FALSE;
|
||||||
|
opassed = ofailed = orfailed = 0;
|
||||||
|
|
||||||
|
argv = CommandLineToArgvW(GetCommandLineW(), &argc);
|
||||||
|
|
||||||
|
if (argc < 2)
|
||||||
|
{
|
||||||
|
OutputUsage(pszExe);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Get options */
|
||||||
|
for (i = 1; i < argc; i++)
|
||||||
|
{
|
||||||
|
if (wcsicmp(argv[i], L"-r") == 0)
|
||||||
|
{
|
||||||
|
ti.bRegress = TRUE;
|
||||||
|
}
|
||||||
|
else if (wcsicmp(argv[i], L"all") == 0)
|
||||||
|
{
|
||||||
|
bAll = TRUE;
|
||||||
|
}
|
||||||
|
else if (wcsicmp(argv[i], L"status") == 0)
|
||||||
|
{
|
||||||
|
bAll = TRUE;
|
||||||
|
bStatus = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (bStatus)
|
||||||
|
{
|
||||||
|
printf("Output of API status is unimplemented.\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i = 0; i < NumTests(); i++)
|
||||||
|
{
|
||||||
|
for (j = 1; j < argc; j++)
|
||||||
|
{
|
||||||
|
if (bAll || wcsicmp(argv[j], TestList[i].Test) == 0)
|
||||||
|
{
|
||||||
|
ti.passed = 0;
|
||||||
|
ti.failed = 0;
|
||||||
|
ti.rfailed = 0;
|
||||||
|
if (!IsFunctionPresent(TestList[i].Test))
|
||||||
|
{
|
||||||
|
printf("Function %ls was not found!\n", TestList[i].Test);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("Executing test: %ls\n", TestList[i].Test);
|
||||||
|
TestList[i].Proc(&ti);
|
||||||
|
opassed += ti.passed;
|
||||||
|
ofailed += ti.failed;
|
||||||
|
orfailed += ti.rfailed;
|
||||||
|
printf(" tests: %d, passed: %d, failed: %d\n\n", ti.passed+ti.failed, ti.passed, ti.failed);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("Overall:\n");
|
||||||
|
printf(" tests: %d, passed: %d, failed: %d\n\n", opassed+ofailed, opassed, ofailed);
|
||||||
|
if (ti.bRegress)
|
||||||
|
{
|
||||||
|
printf(" regressions: %d\n", orfailed);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ti.bRegress)
|
||||||
|
return ti.rfailed;
|
||||||
|
|
||||||
|
return ti.failed;
|
||||||
|
}
|
85
rostests/apitests/apitest.h
Normal file
85
rostests/apitests/apitest.h
Normal file
|
@ -0,0 +1,85 @@
|
||||||
|
#ifndef _APITEST_H
|
||||||
|
#define _APITEST_H
|
||||||
|
|
||||||
|
#define WINVER 0x501
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
#include <stdarg.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <windows.h>
|
||||||
|
|
||||||
|
|
||||||
|
/* type definitions */
|
||||||
|
|
||||||
|
typedef struct tagTESTINFO
|
||||||
|
{
|
||||||
|
INT passed;
|
||||||
|
INT failed;
|
||||||
|
INT rfailed;
|
||||||
|
BOOL bRegress;
|
||||||
|
} TESTINFO, *PTESTINFO;
|
||||||
|
|
||||||
|
typedef BOOL (*TESTPROC)(PTESTINFO);
|
||||||
|
|
||||||
|
typedef struct tagTEST
|
||||||
|
{
|
||||||
|
WCHAR* Test;
|
||||||
|
TESTPROC Proc;
|
||||||
|
} TESTENTRY, *PTESTENTRY;
|
||||||
|
|
||||||
|
|
||||||
|
/* macros */
|
||||||
|
|
||||||
|
#define TEST(x) \
|
||||||
|
if (pti->bRegress) \
|
||||||
|
{ \
|
||||||
|
if (x)\
|
||||||
|
{\
|
||||||
|
(pti->passed)++;\
|
||||||
|
printf("non-rtest succeeded in %s:%d (%s)\n", __FILE__, __LINE__, #x);\
|
||||||
|
} else {\
|
||||||
|
(pti->failed)++;\
|
||||||
|
} \
|
||||||
|
} \
|
||||||
|
else \
|
||||||
|
{ \
|
||||||
|
if (x)\
|
||||||
|
{\
|
||||||
|
(pti->passed)++;\
|
||||||
|
} else {\
|
||||||
|
(pti->failed)++;\
|
||||||
|
printf("test failed in %s:%d (%s)\n", __FILE__, __LINE__, #x);\
|
||||||
|
} \
|
||||||
|
}
|
||||||
|
|
||||||
|
#define RTEST(x) \
|
||||||
|
if (pti->bRegress) \
|
||||||
|
{ \
|
||||||
|
if (x)\
|
||||||
|
{\
|
||||||
|
(pti->passed)++;\
|
||||||
|
} else {\
|
||||||
|
(pti->failed)++;\
|
||||||
|
(pti->rfailed)++;\
|
||||||
|
printf("rtest failed in %s:%d (%s)\n", __FILE__, __LINE__, #x);\
|
||||||
|
} \
|
||||||
|
} \
|
||||||
|
else \
|
||||||
|
{ \
|
||||||
|
if (x)\
|
||||||
|
{\
|
||||||
|
(pti->passed)++;\
|
||||||
|
} else {\
|
||||||
|
(pti->failed)++;\
|
||||||
|
printf("test failed in %s:%d (%s)\n", __FILE__, __LINE__, #x);\
|
||||||
|
} \
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int TestMain(LPWSTR pszExe);
|
||||||
|
extern TESTENTRY TestList[];
|
||||||
|
INT NumTests(void);
|
||||||
|
BOOL IsFunctionPresent(LPWSTR lpszFunction);
|
||||||
|
|
||||||
|
#endif /* _APITEST_H */
|
8
rostests/apitests/directory.rbuild
Normal file
8
rostests/apitests/directory.rbuild
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
|
||||||
|
<directory name="w32kdll">
|
||||||
|
<xi:include href="w32kdll/w32kdll.rbuild" />
|
||||||
|
</directory>
|
||||||
|
|
||||||
|
<directory name="w32knapi">
|
||||||
|
<xi:include href="w32knapi/w32knapi.rbuild" />
|
||||||
|
</directory>
|
31
rostests/apitests/w32kdll/main.c
Normal file
31
rostests/apitests/w32kdll/main.c
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
#include <windows.h>
|
||||||
|
|
||||||
|
#ifdef BUILD_DLL
|
||||||
|
#define DLL_EXPORT __declspec(dllexport)
|
||||||
|
#else
|
||||||
|
#define DLL_EXPORT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
||||||
|
{
|
||||||
|
switch (fdwReason)
|
||||||
|
{
|
||||||
|
case DLL_PROCESS_ATTACH:
|
||||||
|
// attach to process
|
||||||
|
// return FALSE to fail DLL load
|
||||||
|
break;
|
||||||
|
|
||||||
|
case DLL_PROCESS_DETACH:
|
||||||
|
// detach from process
|
||||||
|
break;
|
||||||
|
|
||||||
|
case DLL_THREAD_ATTACH:
|
||||||
|
// attach to thread
|
||||||
|
break;
|
||||||
|
|
||||||
|
case DLL_THREAD_DETACH:
|
||||||
|
// detach from thread
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return TRUE; // succesful
|
||||||
|
}
|
680
rostests/apitests/w32kdll/w32kdll.def
Normal file
680
rostests/apitests/w32kdll/w32kdll.def
Normal file
|
@ -0,0 +1,680 @@
|
||||||
|
; $Id: w32kdll.def 27344 2007-08-01 14:12:10Z tkreuzer $
|
||||||
|
;
|
||||||
|
; ReactOS Operating System
|
||||||
|
;
|
||||||
|
; This file contains all win32k native api functions from win xp
|
||||||
|
; unsupported functions are commented out.
|
||||||
|
;
|
||||||
|
LIBRARY w32kdll.dll
|
||||||
|
|
||||||
|
EXPORTS
|
||||||
|
NtGdiAbortDoc@4
|
||||||
|
NtGdiAbortPath@4
|
||||||
|
;NtGdiAddFontResourceW@24
|
||||||
|
;NtGdiAddRemoteFontToDC@16
|
||||||
|
;NtGdiAddFontMemResourceEx@20
|
||||||
|
;NtGdiRemoveMergeFont@8
|
||||||
|
;NtGdiAddRemoteMMInstanceToDC@12
|
||||||
|
;NtGdiAlphaBlend@48
|
||||||
|
NtGdiAngleArc@24
|
||||||
|
;NtGdiAnyLinkedFonts@0
|
||||||
|
;GreFontIsLinked@4
|
||||||
|
NtGdiArcInternal@40
|
||||||
|
NtGdiBeginPath@4
|
||||||
|
NtGdiBitBlt@44
|
||||||
|
NtGdiCancelDC@4
|
||||||
|
;NtGdiCheckBitmapBits@32
|
||||||
|
NtGdiCloseFigure@4
|
||||||
|
;NtGdiClearBitmapAttributes@8
|
||||||
|
;NtGdiClearBrushAttributes@8
|
||||||
|
;NtGdiColorCorrectPalette@24
|
||||||
|
NtGdiCombineRgn@16
|
||||||
|
NtGdiCombineTransform@12
|
||||||
|
;NtGdiComputeXformCoefficients@4
|
||||||
|
;NtGdiConsoleTextOut@16
|
||||||
|
;NtGdiConvertMetafileRect@8
|
||||||
|
NtGdiCreateBitmap@20
|
||||||
|
NtGdiCreateClientObj@4
|
||||||
|
NtGdiCreateColorSpace@4
|
||||||
|
;NtGdiCreateColorTransform@32
|
||||||
|
NtGdiCreateCompatibleBitmap@12
|
||||||
|
NtGdiCreateCompatibleDC@4
|
||||||
|
NtGdiCreateDIBBrush@24
|
||||||
|
;NtGdiCreateDIBitmapInternal@44
|
||||||
|
NtGdiCreateDIBSection@36
|
||||||
|
NtGdiCreateEllipticRgn@16
|
||||||
|
NtGdiCreateHalftonePalette@4
|
||||||
|
NtGdiCreateHatchBrushInternal@12
|
||||||
|
;NtGdiCreateMetafileDC@4
|
||||||
|
;NtGdiCreatePaletteInternal@8
|
||||||
|
NtGdiCreatePatternBrushInternal@12
|
||||||
|
NtGdiCreatePen@16
|
||||||
|
NtGdiCreateRectRgn@16
|
||||||
|
NtGdiCreateRoundRectRgn@24
|
||||||
|
;NtGdiCreateServerMetaFile@24
|
||||||
|
NtGdiCreateSolidBrush@8
|
||||||
|
NtGdiD3dContextCreate@16
|
||||||
|
NtGdiD3dContextDestroy@4
|
||||||
|
;NtGdiD3dContextDestroyAll@4
|
||||||
|
NtGdiD3dValidateTextureStageState@4
|
||||||
|
NtGdiD3dDrawPrimitives2@28
|
||||||
|
NtGdiDdGetDriverState@4
|
||||||
|
NtGdiDdAddAttachedSurface@12
|
||||||
|
NtGdiDdAlphaBlt@12
|
||||||
|
NtGdiDdAttachSurface@8
|
||||||
|
NtGdiDdBeginMoCompFrame@8
|
||||||
|
NtGdiDdBlt@12
|
||||||
|
NtGdiDdCanCreateSurface@8
|
||||||
|
NtGdiDdCanCreateD3DBuffer@8
|
||||||
|
NtGdiDdColorControl@8
|
||||||
|
NtGdiDdCreateDirectDrawObject@4
|
||||||
|
NtGdiDdCreateSurface@32
|
||||||
|
NtGdiDdCreateD3DBuffer@32
|
||||||
|
NtGdiDdCreateMoComp@8
|
||||||
|
NtGdiDdCreateSurfaceObject@24
|
||||||
|
NtGdiDdDeleteDirectDrawObject@4
|
||||||
|
NtGdiDdDeleteSurfaceObject@4
|
||||||
|
NtGdiDdDestroyMoComp@8
|
||||||
|
NtGdiDdDestroySurface@8
|
||||||
|
NtGdiDdDestroyD3DBuffer@4
|
||||||
|
NtGdiDdEndMoCompFrame@8
|
||||||
|
NtGdiDdFlip@20
|
||||||
|
NtGdiDdFlipToGDISurface@8
|
||||||
|
NtGdiDdGetAvailDriverMemory@8
|
||||||
|
NtGdiDdGetBltStatus@8
|
||||||
|
NtGdiDdGetDC@8
|
||||||
|
NtGdiDdGetDriverInfo@8
|
||||||
|
NtGdiDdGetDxHandle@12
|
||||||
|
NtGdiDdGetFlipStatus@8
|
||||||
|
NtGdiDdGetInternalMoCompInfo@8
|
||||||
|
NtGdiDdGetMoCompBuffInfo@8
|
||||||
|
NtGdiDdGetMoCompGuids@8
|
||||||
|
NtGdiDdGetMoCompFormats@8
|
||||||
|
NtGdiDdGetScanLine@8
|
||||||
|
NtGdiDdLock@12
|
||||||
|
NtGdiDdLockD3D@8
|
||||||
|
NtGdiDdQueryDirectDrawObject@44
|
||||||
|
NtGdiDdQueryMoCompStatus@8
|
||||||
|
NtGdiDdReenableDirectDrawObject@8
|
||||||
|
NtGdiDdReleaseDC@4
|
||||||
|
NtGdiDdRenderMoComp@8
|
||||||
|
NtGdiDdResetVisrgn@8
|
||||||
|
NtGdiDdSetColorKey@8
|
||||||
|
NtGdiDdSetExclusiveMode@8
|
||||||
|
NtGdiDdSetGammaRamp@12
|
||||||
|
NtGdiDdCreateSurfaceEx@12
|
||||||
|
NtGdiDdSetOverlayPosition@12
|
||||||
|
NtGdiDdUnattachSurface@8
|
||||||
|
NtGdiDdUnlock@8
|
||||||
|
NtGdiDdUnlockD3D@8
|
||||||
|
NtGdiDdUpdateOverlay@12
|
||||||
|
NtGdiDdWaitForVerticalBlank@8
|
||||||
|
;NtGdiDvpCanCreateVideoPort@8
|
||||||
|
;NtGdiDvpColorControl@8
|
||||||
|
;NtGdiDvpCreateVideoPort@8
|
||||||
|
;NtGdiDvpDestroyVideoPort@8
|
||||||
|
;NtGdiDvpFlipVideoPort@16
|
||||||
|
;NtGdiDvpGetVideoPortBandwidth@8
|
||||||
|
;NtGdiDvpGetVideoPortField@8
|
||||||
|
;NtGdiDvpGetVideoPortFlipStatus@8
|
||||||
|
;NtGdiDvpGetVideoPortInputFormats@8
|
||||||
|
;NtGdiDvpGetVideoPortLine@8
|
||||||
|
;NtGdiDvpGetVideoPortOutputFormats@8
|
||||||
|
;NtGdiDvpGetVideoPortConnectInfo@8
|
||||||
|
;NtGdiDvpGetVideoSignalStatus@8
|
||||||
|
;NtGdiDvpUpdateVideoPort@16
|
||||||
|
;NtGdiDvpWaitForVideoPortSync@8
|
||||||
|
;NtGdiDvpAcquireNotification@12
|
||||||
|
;NtGdiDvpReleaseNotification@8
|
||||||
|
;NtGdiDxgGenericThunk@24
|
||||||
|
NtGdiDeleteClientObj@4
|
||||||
|
;bDeleteColorSpace@4
|
||||||
|
;NtGdiDeleteColorTransform@8
|
||||||
|
NtGdiDeleteObjectApp@4
|
||||||
|
NtGdiDescribePixelFormat@16
|
||||||
|
;NtGdiGetPerBandInfo@8
|
||||||
|
;NtGdiDoBanding@16
|
||||||
|
;NtGdiDoPalette@24
|
||||||
|
NtGdiDrawEscape@16
|
||||||
|
NtGdiEllipse@20
|
||||||
|
;GreEnableEUDC@4
|
||||||
|
NtGdiEndDoc@4
|
||||||
|
NtGdiEndPage@4
|
||||||
|
NtGdiEndPath@4
|
||||||
|
;NtGdiEnumFontChunk@20
|
||||||
|
;NtGdiEnumFontClose@4
|
||||||
|
;NtGdiEnumFontOpen@28
|
||||||
|
NtGdiEnumObjects@16
|
||||||
|
NtGdiEqualRgn@8
|
||||||
|
;NtGdiEudcLoadUnloadLink@28
|
||||||
|
NtGdiExcludeClipRect@20
|
||||||
|
NtGdiExtCreatePen@44
|
||||||
|
NtGdiExtCreateRegion@12
|
||||||
|
NtGdiExtEscape@32
|
||||||
|
NtGdiExtFloodFill@20
|
||||||
|
NtGdiExtGetObjectW@12
|
||||||
|
NtGdiExtSelectClipRgn@12
|
||||||
|
;NtGdiExtTextOutW@36
|
||||||
|
NtGdiFillPath@4
|
||||||
|
NtGdiFillRgn@12
|
||||||
|
NtGdiFlattenPath@4
|
||||||
|
;NtGdiFlushUserBatch@0
|
||||||
|
NtGdiFlush@0
|
||||||
|
;NtGdiForceUFIMapping@8
|
||||||
|
NtGdiFrameRgn@20
|
||||||
|
;NtGdiFullscreenControl@20
|
||||||
|
;NtGdiGetAndSetDCDword@16
|
||||||
|
;NtGdiGetAppClipBox@8
|
||||||
|
NtGdiGetBitmapBits@12
|
||||||
|
;NtGdiGetBitmapDimension@8
|
||||||
|
NtGdiGetBoundsRect@12
|
||||||
|
;NtGdiGetCharABCWidthsW@24
|
||||||
|
;NtGdiGetCharacterPlacementW@24
|
||||||
|
NtGdiGetCharSet@4
|
||||||
|
;NtGdiGetCharWidthW@24
|
||||||
|
;NtGdiGetCharWidthInfo@8
|
||||||
|
NtGdiGetColorAdjustment@8
|
||||||
|
;NtGdiGetColorSpaceforBitmap@4
|
||||||
|
;NtGdiGetDCDword@12
|
||||||
|
;NtGdiGetDCforBitmap@4
|
||||||
|
;NtGdiGetDCObject@8
|
||||||
|
;NtGdiGetDCPoint@12
|
||||||
|
NtGdiGetDeviceCaps@8
|
||||||
|
NtGdiGetDeviceGammaRamp@8
|
||||||
|
;NtGdiGetDeviceCapsAll@8
|
||||||
|
;NtGdiGetDIBitsInternal@36
|
||||||
|
;NtGdiGetETM@8
|
||||||
|
;NtGdiGetEudcTimeStampEx@12
|
||||||
|
NtGdiGetFontData@20
|
||||||
|
NtGdiGetFontResourceInfoInternalW@28
|
||||||
|
;NtGdiGetGlyphIndicesW@20
|
||||||
|
;NtGdiGetGlyphIndicesWInternal@24
|
||||||
|
NtGdiGetGlyphOutline@32
|
||||||
|
NtGdiGetKerningPairs@12
|
||||||
|
;NtGdiGetLinkedUFIs@12
|
||||||
|
NtGdiGetMiterLimit@8
|
||||||
|
;NtGdiGetMonitorID@12
|
||||||
|
NtGdiGetNearestColor@8
|
||||||
|
NtGdiGetNearestPaletteIndex@8
|
||||||
|
;NtGdiGetObjectBitmapHandle@8
|
||||||
|
NtGdiGetOutlineTextMetricsInternalW@16
|
||||||
|
NtGdiGetPath@16
|
||||||
|
NtGdiGetPixel@12
|
||||||
|
NtGdiGetRandomRgn@12
|
||||||
|
NtGdiGetRasterizerCaps@8
|
||||||
|
;NtGdiGetRealizationInfo@12
|
||||||
|
NtGdiGetRegionData@12
|
||||||
|
NtGdiGetRgnBox@8
|
||||||
|
;NtGdiGetServerMetaFileBits@28
|
||||||
|
;NtGdiGetSpoolMessage@16
|
||||||
|
;NtGdiGetStats@20
|
||||||
|
NtGdiGetStockObject@4
|
||||||
|
;NtGdiGetStringBitmapW@20
|
||||||
|
NtGdiGetSystemPaletteUse@4
|
||||||
|
NtGdiGetTextCharsetInfo@12
|
||||||
|
NtGdiGetTextExtent@20
|
||||||
|
NtGdiGetTextExtentExW@32
|
||||||
|
NtGdiGetTextFaceW@16
|
||||||
|
NtGdiGetTextMetricsW@12
|
||||||
|
;NtGdiGetTransform@12
|
||||||
|
;NtGdiGetUFI@24
|
||||||
|
;NtGdiGetEmbUFI@28
|
||||||
|
;NtGdiGetUFIPathname@40
|
||||||
|
;GreGetEmbedFonts@0
|
||||||
|
;NtGdiChangeGhostFont@8
|
||||||
|
;NtGdiAddEmbFontToDC@8
|
||||||
|
;NtGdiGetFontUnicodeRanges@8
|
||||||
|
;NtGdiGetWidthTable@28
|
||||||
|
NtGdiGradientFill@24
|
||||||
|
NtGdiHfontCreate@20
|
||||||
|
;NtGdiIcmBrushInfo@32
|
||||||
|
;NtGdiInit@0
|
||||||
|
;NtGdiInitSpool@0
|
||||||
|
NtGdiIntersectClipRect@20
|
||||||
|
NtGdiInvertRgn@8
|
||||||
|
NtGdiLineTo@12
|
||||||
|
;NtGdiMakeFontDir@20
|
||||||
|
;NtGdiMakeInfoDC@8
|
||||||
|
NtGdiMaskBlt@52
|
||||||
|
NtGdiModifyWorldTransform@12
|
||||||
|
;NtGdiMonoBitmap@4
|
||||||
|
;NtGdiMoveTo@16
|
||||||
|
NtGdiOffsetClipRgn@12
|
||||||
|
NtGdiOffsetRgn@12
|
||||||
|
NtGdiOpenDCW@28
|
||||||
|
NtGdiPatBlt@24
|
||||||
|
NtGdiPolyPatBlt@20
|
||||||
|
NtGdiPathToRegion@4
|
||||||
|
NtGdiPlgBlt@44
|
||||||
|
NtGdiPolyDraw@16
|
||||||
|
NtGdiPolyPolyDraw@20
|
||||||
|
;NtGdiPolyTextOutW@16
|
||||||
|
NtGdiPtInRegion@12
|
||||||
|
NtGdiPtVisible@12
|
||||||
|
;NtGdiQueryFonts@12
|
||||||
|
;NtGdiQueryFontAssocInfo@4
|
||||||
|
NtGdiRectangle@20
|
||||||
|
NtGdiRectInRegion@8
|
||||||
|
NtGdiRectVisible@8
|
||||||
|
;NtGdiRemoveFontResourceW@24
|
||||||
|
;NtGdiRemoveFontMemResourceEx@4
|
||||||
|
NtGdiResetDC@20
|
||||||
|
NtGdiResizePalette@8
|
||||||
|
NtGdiRestoreDC@8
|
||||||
|
NtGdiRoundRect@28
|
||||||
|
NtGdiSaveDC@4
|
||||||
|
NtGdiScaleViewportExtEx@24
|
||||||
|
NtGdiScaleWindowExtEx@24
|
||||||
|
;NtGdiSelectBitmap@8
|
||||||
|
;GreSelectBitmap@8
|
||||||
|
;NtGdiSelectBrush@8
|
||||||
|
NtGdiSelectClipPath@8
|
||||||
|
;NtGdiSelectFont@8
|
||||||
|
;NtGdiSelectPen@8
|
||||||
|
;NtGdiSetBitmapAttributes@8
|
||||||
|
NtGdiSetBitmapBits@12
|
||||||
|
;NtGdiSetBitmapDimension@16
|
||||||
|
NtGdiSetBoundsRect@12
|
||||||
|
;NtGdiSetBrushAttributes@8
|
||||||
|
;NtGdiSetBrushOrg@16
|
||||||
|
NtGdiSetColorAdjustment@8
|
||||||
|
NtGdiSetColorSpace@8
|
||||||
|
NtGdiSetDeviceGammaRamp@8
|
||||||
|
;NtGdiSetDIBitsToDeviceInternal@40
|
||||||
|
;NtGdiSetFontEnumeration@4
|
||||||
|
;NtGdiSetFontXform@12
|
||||||
|
;NtGdiSetIcmMode@12
|
||||||
|
;NtGdiSetLinkedUFIs@12
|
||||||
|
;NtGdiSetMagicColors@12
|
||||||
|
NtGdiSetMetaRgn@4
|
||||||
|
NtGdiSetMiterLimit@12
|
||||||
|
;NtGdiGetDeviceWidth@4
|
||||||
|
;NtGdiMirrorWindowOrg@4
|
||||||
|
;NtGdiSetLayout@12
|
||||||
|
NtGdiSetPixel@16
|
||||||
|
NtGdiSetPixelFormat@8
|
||||||
|
NtGdiSetRectRgn@20
|
||||||
|
NtGdiSetSystemPaletteUse@8
|
||||||
|
NtGdiSetTextJustification@12
|
||||||
|
;NtGdiSetupPublicCFONT@12
|
||||||
|
;NtGdiSetVirtualResolution@20
|
||||||
|
;NtGdiSetSizeDevice@12
|
||||||
|
NtGdiStartDoc@16
|
||||||
|
NtGdiStartPage@4
|
||||||
|
NtGdiStretchBlt@48
|
||||||
|
;NtGdiStretchDIBitsInternal@40
|
||||||
|
NtGdiStrokeAndFillPath@4
|
||||||
|
NtGdiStrokePath@4
|
||||||
|
NtGdiSwapBuffers@4
|
||||||
|
;NtGdiTransformPoints@20
|
||||||
|
NtGdiTransparentBlt@44
|
||||||
|
;NtGdiUnloadPrinterDriver@8
|
||||||
|
;NtGdiUMPDEngFreeUserMem@4
|
||||||
|
;NtGdiUnmapMemFont@4
|
||||||
|
NtGdiUnrealizeObject@4
|
||||||
|
NtGdiUpdateColors@4
|
||||||
|
NtGdiWidenPath@4
|
||||||
|
NtUserActivateKeyboardLayout@8
|
||||||
|
NtUserAlterWindowStyle@12
|
||||||
|
;NtUserAssociateInputContext@12
|
||||||
|
NtUserAttachThreadInput@12
|
||||||
|
NtUserBeginPaint@8
|
||||||
|
NtUserBitBltSysBmp@32
|
||||||
|
NtUserBlockInput@4
|
||||||
|
;NtUserBuildHimcList@16
|
||||||
|
NtUserBuildHwndList@28
|
||||||
|
NtUserBuildNameList@16
|
||||||
|
NtUserBuildPropList@16
|
||||||
|
NtUserCallHwnd@8
|
||||||
|
NtUserCallHwndLock@8
|
||||||
|
NtUserCallHwndOpt@8
|
||||||
|
NtUserCallHwndParam@12
|
||||||
|
NtUserCallHwndParamLock@12
|
||||||
|
NtUserCallMsgFilter@8
|
||||||
|
NtUserCallNextHookEx@16
|
||||||
|
NtUserCallNoParam@4
|
||||||
|
NtUserCallOneParam@8
|
||||||
|
NtUserCallTwoParam@12
|
||||||
|
NtUserChangeClipboardChain@8
|
||||||
|
NtUserChangeDisplaySettings@20
|
||||||
|
;NtUserCheckImeHotKey@8
|
||||||
|
NtUserCheckMenuItem@12
|
||||||
|
NtUserChildWindowFromPointEx@16
|
||||||
|
NtUserClipCursor@4
|
||||||
|
NtUserCloseClipboard@0
|
||||||
|
NtUserCloseDesktop@4
|
||||||
|
NtUserCloseWindowStation@4
|
||||||
|
;NtUserConsoleControl@12
|
||||||
|
NtUserConvertMemHandle@8
|
||||||
|
NtUserCopyAcceleratorTable@12
|
||||||
|
NtUserCountClipboardFormats@0
|
||||||
|
NtUserCreateAcceleratorTable@8
|
||||||
|
NtUserCreateCaret@16
|
||||||
|
NtUserCreateDesktop@20
|
||||||
|
;NtUserCreateInputContext@4
|
||||||
|
NtUserCreateLocalMemHandle@16
|
||||||
|
;NtUserCreateWindowEx@60
|
||||||
|
;NtUserCreateWindowStation@28
|
||||||
|
NtUserDdeGetQualityOfService@12
|
||||||
|
NtUserDdeInitialize@20
|
||||||
|
NtUserDdeSetQualityOfService@12
|
||||||
|
NtUserDeferWindowPos@32
|
||||||
|
NtUserDefSetText@8
|
||||||
|
;NtUserDeleteMenu@12
|
||||||
|
NtUserDestroyAcceleratorTable@4
|
||||||
|
;NtUserDestroyCursor@8
|
||||||
|
;NtUserDestroyInputContext@4
|
||||||
|
NtUserDestroyMenu@4
|
||||||
|
NtUserDestroyWindow@4
|
||||||
|
;NtUserDisableThreadIme@4
|
||||||
|
NtUserDispatchMessage@4
|
||||||
|
NtUserDragDetect@12
|
||||||
|
NtUserDragObject@20
|
||||||
|
NtUserDrawAnimatedRects@16
|
||||||
|
NtUserDrawCaption@16
|
||||||
|
NtUserDrawCaptionTemp@28
|
||||||
|
NtUserDrawIconEx@44
|
||||||
|
NtUserDrawMenuBarTemp@20
|
||||||
|
NtUserEmptyClipboard@0
|
||||||
|
NtUserEnableMenuItem@12
|
||||||
|
NtUserEnableScrollBar@12
|
||||||
|
NtUserEndDeferWindowPosEx@8
|
||||||
|
NtUserEndMenu@0
|
||||||
|
NtUserEndPaint@8
|
||||||
|
NtUserEnumDisplayDevices@16
|
||||||
|
;NtUserEnumDisplayMonitors@16
|
||||||
|
NtUserEnumDisplaySettings@16
|
||||||
|
NtUserEvent@4
|
||||||
|
NtUserExcludeUpdateRgn@8
|
||||||
|
NtUserFillWindow@16
|
||||||
|
;NtUserFindExistingCursorIcon@12
|
||||||
|
;NtUserFindWindowEx@20
|
||||||
|
NtUserFlashWindowEx@4
|
||||||
|
NtUserGetAltTabInfo@24
|
||||||
|
NtUserGetAncestor@8
|
||||||
|
;NtUserGetAppImeLevel@4
|
||||||
|
NtUserGetAsyncKeyState@4
|
||||||
|
;NtUserGetAtomName@8
|
||||||
|
NtUserGetCaretBlinkTime@0
|
||||||
|
NtUserGetCaretPos@4
|
||||||
|
;NtUserGetClassInfo@20
|
||||||
|
NtUserGetClassName@12
|
||||||
|
NtUserGetClipboardData@8
|
||||||
|
NtUserGetClipboardFormatName@12
|
||||||
|
NtUserGetClipboardOwner@0
|
||||||
|
NtUserGetClipboardSequenceNumber@0
|
||||||
|
NtUserGetClipboardViewer@0
|
||||||
|
NtUserGetClipCursor@4
|
||||||
|
NtUserGetComboBoxInfo@8
|
||||||
|
NtUserGetControlBrush@12
|
||||||
|
NtUserGetControlColor@16
|
||||||
|
NtUserGetCPD@12
|
||||||
|
NtUserGetCursorFrameInfo@16
|
||||||
|
NtUserGetCursorInfo@4
|
||||||
|
NtUserGetDC@4
|
||||||
|
NtUserGetDCEx@12
|
||||||
|
NtUserGetDoubleClickTime@0
|
||||||
|
NtUserGetForegroundWindow@0
|
||||||
|
NtUserGetGuiResources@8
|
||||||
|
NtUserGetGUIThreadInfo@8
|
||||||
|
;NtUserGetIconInfo@24
|
||||||
|
;NtUserGetIconSize@16
|
||||||
|
NtUserGetImeHotKey@16
|
||||||
|
;NtUserGetImeInfoEx@8
|
||||||
|
NtUserGetInternalWindowPos@12
|
||||||
|
NtUserGetKeyboardLayoutList@8
|
||||||
|
NtUserGetKeyboardLayoutName@4
|
||||||
|
NtUserGetKeyboardState@4
|
||||||
|
NtUserGetKeyNameText@12
|
||||||
|
NtUserGetKeyState@4
|
||||||
|
NtUserGetListBoxInfo@4
|
||||||
|
NtUserGetMenuBarInfo@16
|
||||||
|
NtUserGetMenuIndex@8
|
||||||
|
NtUserGetMenuItemRect@16
|
||||||
|
NtUserGetMessage@16
|
||||||
|
NtUserGetMouseMovePointsEx@20
|
||||||
|
NtUserGetObjectInformation@20
|
||||||
|
NtUserGetOpenClipboardWindow@0
|
||||||
|
NtUserGetPriorityClipboardFormat@8
|
||||||
|
NtUserGetProcessWindowStation@0
|
||||||
|
;NtUserGetRawInputBuffer@12
|
||||||
|
;NtUserGetRawInputData@20
|
||||||
|
;NtUserGetRawInputDeviceInfo@16
|
||||||
|
;NtUserGetRawInputDeviceList@12
|
||||||
|
;NtUserGetRegisteredRawInputDevices@12
|
||||||
|
NtUserGetScrollBarInfo@12
|
||||||
|
NtUserGetSystemMenu@8
|
||||||
|
NtUserGetThreadDesktop@8
|
||||||
|
NtUserGetThreadState@4
|
||||||
|
NtUserGetTitleBarInfo@8
|
||||||
|
NtUserGetUpdateRect@12
|
||||||
|
NtUserGetUpdateRgn@12
|
||||||
|
NtUserGetWindowDC@4
|
||||||
|
NtUserGetWindowPlacement@8
|
||||||
|
NtUserGetWOWClass@8
|
||||||
|
;NtUserHardErrorControl@12
|
||||||
|
NtUserHideCaret@4
|
||||||
|
NtUserHiliteMenuItem@16
|
||||||
|
NtUserImpersonateDdeClientWindow@8
|
||||||
|
;NtUserInitialize@12
|
||||||
|
NtUserInitializeClientPfnArrays@16
|
||||||
|
;NtUserInitTask@48
|
||||||
|
NtUserInternalGetWindowText@12
|
||||||
|
NtUserInvalidateRect@12
|
||||||
|
NtUserInvalidateRgn@12
|
||||||
|
NtUserIsClipboardFormatAvailable@4
|
||||||
|
NtUserKillTimer@8
|
||||||
|
;NtUserLoadKeyboardLayoutEx@28
|
||||||
|
NtUserLockWindowStation@4
|
||||||
|
NtUserLockWindowUpdate@4
|
||||||
|
NtUserLockWorkStation@0
|
||||||
|
NtUserMapVirtualKeyEx@16
|
||||||
|
NtUserMenuItemFromPoint@16
|
||||||
|
NtUserMessageCall@28
|
||||||
|
;NtUserMinMaximize@12
|
||||||
|
NtUserMNDragLeave@0
|
||||||
|
NtUserMNDragOver@8
|
||||||
|
NtUserModifyUserStartupInfoFlags@8
|
||||||
|
NtUserMoveWindow@24
|
||||||
|
NtUserNotifyIMEStatus@12
|
||||||
|
;NtUserNotifyProcessCreate@16
|
||||||
|
NtUserNotifyWinEvent@16
|
||||||
|
NtUserOpenClipboard@8
|
||||||
|
NtUserOpenDesktop@12
|
||||||
|
NtUserOpenInputDesktop@12
|
||||||
|
NtUserOpenWindowStation@8
|
||||||
|
NtUserPaintDesktop@4
|
||||||
|
NtUserPeekMessage@20
|
||||||
|
NtUserPostMessage@16
|
||||||
|
NtUserPostThreadMessage@16
|
||||||
|
;NtUserPrintWindow@12
|
||||||
|
;NtUserProcessConnect@12
|
||||||
|
;NtUserQueryInformationThread@20
|
||||||
|
;NtUserQueryInputContext@8
|
||||||
|
NtUserQuerySendMessage@4
|
||||||
|
NtUserQueryUserCounters@20
|
||||||
|
NtUserQueryWindow@8
|
||||||
|
NtUserRealChildWindowFromPoint@12
|
||||||
|
;NtUserRealInternalGetMessage@24
|
||||||
|
;NtUserRealWaitMessageEx@8
|
||||||
|
NtUserRedrawWindow@16
|
||||||
|
;NtUserRegisterClassExWOW@28
|
||||||
|
;NtUserRegisterUserApiHook@8
|
||||||
|
NtUserRegisterHotKey@16
|
||||||
|
;NtUserRegisterRawInputDevices@12
|
||||||
|
NtUserRegisterTasklist@4
|
||||||
|
NtUserRegisterWindowMessage@4
|
||||||
|
NtUserRemoveMenu@12
|
||||||
|
NtUserRemoveProp@8
|
||||||
|
;NtUserResolveDesktop@16
|
||||||
|
NtUserResolveDesktopForWOW@4
|
||||||
|
NtUserSBGetParms@16
|
||||||
|
NtUserScrollDC@28
|
||||||
|
NtUserScrollWindowEx@32
|
||||||
|
;NtUserSelectPalette@12
|
||||||
|
NtUserSendInput@12
|
||||||
|
NtUserSetActiveWindow@4
|
||||||
|
;NtUserSetAppImeLevel@8
|
||||||
|
NtUserSetCapture@4
|
||||||
|
NtUserSetClassLong@16
|
||||||
|
NtUserSetClassWord@12
|
||||||
|
NtUserSetClipboardData@12
|
||||||
|
NtUserSetClipboardViewer@4
|
||||||
|
NtUserSetConsoleReserveKeys@8
|
||||||
|
NtUserSetCursor@4
|
||||||
|
;NtUserSetCursorContents@8
|
||||||
|
;NtUserSetCursorIconData@16
|
||||||
|
NtUserSetDbgTag@8
|
||||||
|
NtUserSetFocus@4
|
||||||
|
NtUserSetImeHotKey@20
|
||||||
|
;NtUserSetImeInfoEx@4
|
||||||
|
NtUserSetImeOwnerWindow@8
|
||||||
|
;NtUserSetInformationProcess@16
|
||||||
|
;NtUserSetInformationThread@16
|
||||||
|
NtUserSetInternalWindowPos@16
|
||||||
|
NtUserSetKeyboardState@4
|
||||||
|
NtUserSetLogonNotifyWindow@4
|
||||||
|
NtUserSetMenu@12
|
||||||
|
NtUserSetMenuContextHelpId@8
|
||||||
|
NtUserSetMenuDefaultItem@12
|
||||||
|
NtUserSetMenuFlagRtoL@4
|
||||||
|
NtUserSetObjectInformation@16
|
||||||
|
NtUserSetParent@8
|
||||||
|
NtUserSetProcessWindowStation@4
|
||||||
|
NtUserSetProp@12
|
||||||
|
NtUserSetRipFlags@8
|
||||||
|
NtUserSetScrollInfo@16
|
||||||
|
NtUserSetShellWindowEx@8
|
||||||
|
NtUserSetSysColors@16
|
||||||
|
NtUserSetSystemCursor@8
|
||||||
|
NtUserSetSystemMenu@8
|
||||||
|
NtUserSetSystemTimer@16
|
||||||
|
NtUserSetThreadDesktop@4
|
||||||
|
;NtUserSetThreadLayoutHandles@8
|
||||||
|
NtUserSetThreadState@8
|
||||||
|
NtUserSetTimer@16
|
||||||
|
NtUserSetWindowFNID@8
|
||||||
|
NtUserSetWindowLong@16
|
||||||
|
NtUserSetWindowPlacement@8
|
||||||
|
NtUserSetWindowPos@28
|
||||||
|
NtUserSetWindowRgn@12
|
||||||
|
NtUserSetWindowsHookAW@12
|
||||||
|
NtUserSetWindowsHookEx@24
|
||||||
|
NtUserSetWindowStationUser@16
|
||||||
|
NtUserSetWindowWord@12
|
||||||
|
NtUserSetWinEventHook@32
|
||||||
|
NtUserShowCaret@4
|
||||||
|
NtUserShowScrollBar@12
|
||||||
|
NtUserShowWindow@8
|
||||||
|
NtUserShowWindowAsync@8
|
||||||
|
;NtUserSoundSentry@0
|
||||||
|
NtUserSwitchDesktop@4
|
||||||
|
NtUserSystemParametersInfo@16
|
||||||
|
;NtUserTestForInteractiveUser@4
|
||||||
|
NtUserThunkedMenuInfo@8
|
||||||
|
NtUserThunkedMenuItemInfo@24
|
||||||
|
NtUserToUnicodeEx@28
|
||||||
|
NtUserTrackMouseEvent@4
|
||||||
|
NtUserTrackPopupMenuEx@24
|
||||||
|
;NtUserCalcMenuBar@20
|
||||||
|
;NtUserPaintMenuBar@24
|
||||||
|
NtUserTranslateAccelerator@12
|
||||||
|
NtUserTranslateMessage@8
|
||||||
|
NtUserUnhookWindowsHookEx@4
|
||||||
|
NtUserUnhookWinEvent@4
|
||||||
|
NtUserUnloadKeyboardLayout@4
|
||||||
|
NtUserUnlockWindowStation@4
|
||||||
|
;NtUserUnregisterClass@12
|
||||||
|
;NtUserUnregisterUserApiHook@0
|
||||||
|
NtUserUnregisterHotKey@8
|
||||||
|
NtUserUpdateInputContext@12
|
||||||
|
NtUserUpdateInstance@12
|
||||||
|
NtUserUpdateLayeredWindow@36
|
||||||
|
;NtUserGetLayeredWindowAttributes@16
|
||||||
|
NtUserSetLayeredWindowAttributes@16
|
||||||
|
NtUserUpdatePerUserSystemParameters@8
|
||||||
|
NtUserUserHandleGrantAccess@12
|
||||||
|
NtUserValidateHandleSecure@4
|
||||||
|
;NtUserValidateRect@8
|
||||||
|
NtUserVkKeyScanEx@12
|
||||||
|
;NtUserWaitForInputIdle@12
|
||||||
|
NtUserWaitForMsgAndEvent@4
|
||||||
|
NtUserWaitMessage@0
|
||||||
|
NtUserWin32PoolAllocationStats@24
|
||||||
|
NtUserWindowFromPoint@8
|
||||||
|
NtUserYieldTask@0
|
||||||
|
;NtUserRemoteConnect@12
|
||||||
|
;NtUserRemoteRedrawRectangle@16
|
||||||
|
;NtUserRemoteRedrawScreen@0
|
||||||
|
;NtUserRemoteStopScreenUpdates@0
|
||||||
|
;NtUserCtxDisplayIOCtl@12
|
||||||
|
;NtGdiEngAssociateSurface@12
|
||||||
|
;NtGdiEngCreateBitmap@24
|
||||||
|
;NtGdiEngCreateDeviceSurface@16
|
||||||
|
;NtGdiEngCreateDeviceBitmap@16
|
||||||
|
;NtGdiEngCreatePalette@24
|
||||||
|
;NtGdiEngComputeGlyphSet@12
|
||||||
|
;NtGdiEngCopyBits@24
|
||||||
|
;NtGdiEngDeletePalette@4
|
||||||
|
;NtGdiEngDeleteSurface@4
|
||||||
|
;NtGdiEngEraseSurface@12
|
||||||
|
;NtGdiEngUnlockSurface@4
|
||||||
|
;NtGdiEngLockSurface@4
|
||||||
|
;NtGdiEngBitBlt@44
|
||||||
|
;NtGdiEngStretchBlt@44
|
||||||
|
;NtGdiEngPlgBlt@44
|
||||||
|
;NtGdiEngMarkBandingSurface@4
|
||||||
|
;NtGdiEngStrokePath@32
|
||||||
|
;NtGdiEngFillPath@28
|
||||||
|
;NtGdiEngStrokeAndFillPath@40
|
||||||
|
;NtGdiEngPaint@20
|
||||||
|
;NtGdiEngLineTo@36
|
||||||
|
;NtGdiEngAlphaBlend@28
|
||||||
|
;NtGdiEngGradientFill@40
|
||||||
|
;NtGdiEngTransparentBlt@32
|
||||||
|
;NtGdiEngTextOut@40
|
||||||
|
;NtGdiEngStretchBltROP@52
|
||||||
|
;NtGdiXLATEOBJ_cGetPalette@16
|
||||||
|
;NtGdiXLATEOBJ_iXlate@8
|
||||||
|
;NtGdiXLATEOBJ_hGetColorTransform@4
|
||||||
|
;NtGdiCLIPOBJ_bEnum@12
|
||||||
|
;NtGdiCLIPOBJ_cEnumStart@20
|
||||||
|
;NtGdiCLIPOBJ_ppoGetPath@4
|
||||||
|
;NtGdiEngDeletePath@4
|
||||||
|
;NtGdiEngCreateClip@0
|
||||||
|
;NtGdiEngDeleteClip@4
|
||||||
|
;NtGdiBRUSHOBJ_ulGetBrushColor@4
|
||||||
|
;NtGdiBRUSHOBJ_pvAllocRbrush@8
|
||||||
|
;NtGdiBRUSHOBJ_pvGetRbrush@4
|
||||||
|
;NtGdiBRUSHOBJ_hGetColorTransform@4
|
||||||
|
;NtGdiXFORMOBJ_bApplyXform@20
|
||||||
|
;NtGdiXFORMOBJ_iGetXform@8
|
||||||
|
;NtGdiFONTOBJ_vGetInfo@12
|
||||||
|
;NtGdiFONTOBJ_pxoGetXform@4
|
||||||
|
;NtGdiFONTOBJ_cGetGlyphs@20
|
||||||
|
;NtGdiFONTOBJ_pifi@4
|
||||||
|
;NtGdiFONTOBJ_pfdg@4
|
||||||
|
;NtGdiFONTOBJ_pQueryGlyphAttrs@8
|
||||||
|
;NtGdiFONTOBJ_pvTrueTypeFontFile@8
|
||||||
|
;NtGdiFONTOBJ_cGetAllGlyphHandles@8
|
||||||
|
;NtGdiSTROBJ_bEnum@12
|
||||||
|
;NtGdiSTROBJ_bEnumPositionsOnly@12
|
||||||
|
;NtGdiSTROBJ_bGetAdvanceWidths@16
|
||||||
|
;NtGdiSTROBJ_vEnumStart@4
|
||||||
|
;NtGdiSTROBJ_dwGetCodePage@4
|
||||||
|
;NtGdiPATHOBJ_vGetBounds@8
|
||||||
|
;NtGdiPATHOBJ_bEnum@8
|
||||||
|
;NtGdiPATHOBJ_vEnumStart@4
|
||||||
|
;NtGdiPATHOBJ_vEnumStartClipLines@16
|
||||||
|
;NtGdiPATHOBJ_bEnumClipLines@12
|
||||||
|
;NtGdiGetDhpdev@4
|
||||||
|
;NtGdiEngCheckAbort@4
|
||||||
|
;NtGdiHT_Get8BPPFormatPalette@16
|
||||||
|
;NtGdiHT_Get8BPPMaskPalette@24
|
||||||
|
;NtGdiUpdateTransform@4
|
||||||
|
;NtGdiSetPUMPDOBJ@16
|
||||||
|
;NtGdiBRUSHOBJ_DeleteRbrush@8
|
||||||
|
;NtGdiUMPDEngFreeUserMem@4
|
||||||
|
;NtGdiUnmapMemFont@4
|
||||||
|
;NtGdiDrawStream@12
|
||||||
|
|
7
rostests/apitests/w32kdll/w32kdll.rbuild
Normal file
7
rostests/apitests/w32kdll/w32kdll.rbuild
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<module name="w32kdll" type="win32dll" entrypoint="0" installname="w32kdll.dll">
|
||||||
|
<importlibrary definition="w32kdll.def" />
|
||||||
|
<define name="__USE_W32API" />
|
||||||
|
<define name="_WIN32_WINNT">0x0502</define>
|
||||||
|
<library>win32ksys</library>
|
||||||
|
<file>main.c</file>
|
||||||
|
</module>
|
|
@ -0,0 +1,25 @@
|
||||||
|
#include "..\w32knapi.h"
|
||||||
|
|
||||||
|
W32KAPI
|
||||||
|
HANDLE
|
||||||
|
APIENTRY
|
||||||
|
NtGdiDdCreateDirectDrawObject(
|
||||||
|
IN HDC hdc
|
||||||
|
)
|
||||||
|
{
|
||||||
|
return (HANDLE)Syscall(L"NtGdiDdCreateDirectDrawObject", 1, &hdc);
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
Test_NtGdiDdCreateDirectDrawObject(PTESTINFO pti)
|
||||||
|
{
|
||||||
|
HDC hdc=CreateDCW(L"Display",NULL,NULL,NULL);
|
||||||
|
|
||||||
|
RTEST(NtGdiDdCreateDirectDrawObject(NULL) == NULL);
|
||||||
|
|
||||||
|
TEST(NtGdiDdCreateDirectDrawObject(hdc) != NULL);
|
||||||
|
|
||||||
|
DeleteDC(hdc);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
|
@ -0,0 +1,19 @@
|
||||||
|
#include "..\w32knapi.h"
|
||||||
|
|
||||||
|
W32KAPI
|
||||||
|
BOOL
|
||||||
|
APIENTRY
|
||||||
|
NtGdiDdDeleteDirectDrawObject(
|
||||||
|
HANDLE hDirectDrawLocal
|
||||||
|
)
|
||||||
|
{
|
||||||
|
return (BOOL)Syscall(L"NtGdiDdDeleteDirectDrawObject", 1, &hDirectDrawLocal);
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
Test_NtGdiDdDeleteDirectDrawObject(PTESTINFO pti)
|
||||||
|
{
|
||||||
|
TEST(NtGdiDdDeleteDirectDrawObject(NULL) == 0);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
#include "..\w32knapi.h"
|
||||||
|
#if 0
|
||||||
|
W32KAPI
|
||||||
|
BOOL STDCALL
|
||||||
|
NtGdiDdQueryDirectDrawObject(
|
||||||
|
HANDLE hDirectDrawLocal,
|
||||||
|
DD_HALINFO *pHalInfo,
|
||||||
|
DWORD *pCallBackFlags,
|
||||||
|
LPD3DNTHAL_CALLBACKS puD3dCallbacks,
|
||||||
|
LPD3DNTHAL_GLOBALDRIVERDATA puD3dDriverData,
|
||||||
|
PDD_D3DBUFCALLBACKS puD3dBufferCallbacks,
|
||||||
|
LPDDSURFACEDESC puD3dTextureFormats,
|
||||||
|
DWORD *puNumHeaps,
|
||||||
|
VIDEOMEMORY *puvmList,
|
||||||
|
DWORD *puNumFourCC,
|
||||||
|
DWORD *puFourCC
|
||||||
|
)
|
||||||
|
{
|
||||||
|
return (HANDLE)Syscall("NtGdiDdQueryDirectDrawObject", 11, &hDirectDrawLocal);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
BOOL
|
||||||
|
Test_NtGdiDdQueryDirectDrawObject(PTESTINFO pti)
|
||||||
|
{
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
57
rostests/apitests/w32knapi/ntgdi/NtGdiArcInternal.c
Normal file
57
rostests/apitests/w32knapi/ntgdi/NtGdiArcInternal.c
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
#include "../w32knapi.h"
|
||||||
|
|
||||||
|
typedef int ARCTYPE;
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
STDCALL
|
||||||
|
NtGdiArcInternal(
|
||||||
|
ARCTYPE arctype,
|
||||||
|
HDC hDC,
|
||||||
|
int LeftRect,
|
||||||
|
int TopRect,
|
||||||
|
int RightRect,
|
||||||
|
int BottomRect,
|
||||||
|
int XStartArc,
|
||||||
|
int YStartArc,
|
||||||
|
int XEndArc,
|
||||||
|
int YEndArc)
|
||||||
|
{
|
||||||
|
return (BOOL)Syscall(L"NtGdiArcInternal", 10, &arctype);
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
Test_NtGdiArcInternal(PTESTINFO pti)
|
||||||
|
{
|
||||||
|
HDC hDC = CreateDCW(L"Display",NULL,NULL,NULL);
|
||||||
|
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
TEST(NtGdiArcInternal(0, 0, 0, 0, 0, 0, 0, 0, 0, 0) == FALSE);
|
||||||
|
TEST(GetLastError() == ERROR_INVALID_HANDLE);
|
||||||
|
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
TEST(NtGdiArcInternal(0, hDC, 0, 0, 0, 0, 0, 0, 0, 0) == TRUE);
|
||||||
|
TEST(NtGdiArcInternal(1, hDC, 0, 0, 0, 0, 0, 0, 0, 0) == TRUE);
|
||||||
|
TEST(NtGdiArcInternal(2, hDC, 0, 0, 0, 0, 0, 0, 0, 0) == TRUE);
|
||||||
|
TEST(NtGdiArcInternal(3, hDC, 0, 0, 0, 0, 0, 0, 0, 0) == TRUE);
|
||||||
|
TEST(GetLastError() == ERROR_SUCCESS);
|
||||||
|
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
TEST(NtGdiArcInternal(4, hDC, 0, 0, 0, 0, 0, 0, 0, 0) == FALSE);
|
||||||
|
TEST(GetLastError() == ERROR_INVALID_PARAMETER);
|
||||||
|
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
TEST(NtGdiArcInternal(4, (HDC)10, 0, 0, 0, 0, 0, 0, 0, 0) == FALSE);
|
||||||
|
TEST(GetLastError() == ERROR_INVALID_HANDLE);
|
||||||
|
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
TEST(NtGdiArcInternal(0, hDC, 10, 10, 0, 0, 0, 0, 0, 0) == TRUE);
|
||||||
|
TEST(NtGdiArcInternal(0, hDC, 10, 10, -10, -10, 0, 0, 0, 0) == TRUE);
|
||||||
|
TEST(NtGdiArcInternal(0, hDC, 0, 0, 0, 0, 10, 0, -10, 0) == TRUE);
|
||||||
|
|
||||||
|
// was passiert, wenn left > right ? einfach tauschen?
|
||||||
|
|
||||||
|
|
||||||
|
DeleteDC(hDC);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
74
rostests/apitests/w32knapi/ntgdi/NtGdiGetBitmapBits.c
Normal file
74
rostests/apitests/w32knapi/ntgdi/NtGdiGetBitmapBits.c
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
#include "../w32knapi.h"
|
||||||
|
|
||||||
|
LONG STDCALL
|
||||||
|
NtGdiGetBitmapBits(
|
||||||
|
HBITMAP hBitmap,
|
||||||
|
DWORD Bytes,
|
||||||
|
IN PBYTE Bits)
|
||||||
|
{
|
||||||
|
return (LONG)Syscall(L"NtGdiGetBitmapBits", 3, &hBitmap);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
Test_NtGdiGetBitmapBits(PTESTINFO pti)
|
||||||
|
{
|
||||||
|
BYTE Bits[50] = {0,1,2,3,4,5,6,7,8,9};
|
||||||
|
HBITMAP hBitmap;
|
||||||
|
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
RTEST(NtGdiGetBitmapBits(0, 0, 0) == 0);
|
||||||
|
RTEST(GetLastError() == ERROR_INVALID_HANDLE);
|
||||||
|
|
||||||
|
/* Test NULL bitmap handle */
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
RTEST(NtGdiGetBitmapBits(0, 5, Bits) == 0);
|
||||||
|
RTEST(GetLastError() == ERROR_INVALID_HANDLE);
|
||||||
|
|
||||||
|
/* Test invalid bitmap handle */
|
||||||
|
hBitmap = (HBITMAP)CreatePen(PS_SOLID, 1, RGB(1,2,3));
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 5, Bits) == 0);
|
||||||
|
RTEST(GetLastError() == ERROR_INVALID_HANDLE);
|
||||||
|
DeleteObject(hBitmap);
|
||||||
|
|
||||||
|
hBitmap = CreateBitmap(3, 3, 1, 8, NULL);
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
|
||||||
|
/* test NULL pointer and count buffer size != 0 */
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 5, NULL) == 12);
|
||||||
|
|
||||||
|
/* test NULL pointer and buffer size == 0*/
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 0, NULL) == 12);
|
||||||
|
|
||||||
|
/* test bad pointer */
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 5, (PBYTE)0x500) == 0);
|
||||||
|
|
||||||
|
/* Test if we can set a number of bytes between lines */
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 5, Bits) == 5);
|
||||||
|
|
||||||
|
/* Test alignment */
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 4, Bits+1) == 4);
|
||||||
|
|
||||||
|
/* Test 1 byte too much */
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 10, Bits) == 10);
|
||||||
|
|
||||||
|
/* Test one row too much */
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 12, Bits) == 12);
|
||||||
|
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 13, Bits) == 12);
|
||||||
|
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 100, Bits) == 12);
|
||||||
|
|
||||||
|
/* Test huge bytes count */
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, 12345678, Bits) == 12);
|
||||||
|
|
||||||
|
/* Test negative bytes count */
|
||||||
|
RTEST(NtGdiGetBitmapBits(hBitmap, -5, Bits) == 12);
|
||||||
|
|
||||||
|
RTEST(GetLastError() == ERROR_SUCCESS);
|
||||||
|
|
||||||
|
DeleteObject(hBitmap);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
74
rostests/apitests/w32knapi/ntgdi/NtGdiSetBitmapBits.c
Normal file
74
rostests/apitests/w32knapi/ntgdi/NtGdiSetBitmapBits.c
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
#include "../w32knapi.h"
|
||||||
|
|
||||||
|
LONG STDCALL
|
||||||
|
NtGdiSetBitmapBits(
|
||||||
|
HBITMAP hBitmap,
|
||||||
|
DWORD Bytes,
|
||||||
|
IN PBYTE Bits)
|
||||||
|
{
|
||||||
|
return (LONG)Syscall(L"NtGdiSetBitmapBits", 3, &hBitmap);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
Test_NtGdiSetBitmapBits(PTESTINFO pti)
|
||||||
|
{
|
||||||
|
BYTE Bits[50] = {0,1,2,3,4,5,6,7,8,9};
|
||||||
|
HBITMAP hBitmap;
|
||||||
|
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
RTEST(NtGdiSetBitmapBits(0, 0, 0) == 0);
|
||||||
|
RTEST(GetLastError() == ERROR_SUCCESS);
|
||||||
|
|
||||||
|
/* Test NULL bitnap handle */
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
RTEST(NtGdiSetBitmapBits(0, 5, Bits) == 0);
|
||||||
|
RTEST(GetLastError() == ERROR_INVALID_HANDLE);
|
||||||
|
|
||||||
|
/* Test invalid bitmap handle */
|
||||||
|
hBitmap = (HBITMAP)CreatePen(PS_SOLID, 1, RGB(1,2,3));
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 5, Bits) == 0);
|
||||||
|
RTEST(GetLastError() == ERROR_INVALID_HANDLE);
|
||||||
|
DeleteObject(hBitmap);
|
||||||
|
|
||||||
|
hBitmap = CreateBitmap(3, 3, 1, 8, NULL);
|
||||||
|
SetLastError(ERROR_SUCCESS);
|
||||||
|
|
||||||
|
/* test NULL pointer and count buffer size != 0 */
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 5, NULL) == 0);
|
||||||
|
|
||||||
|
/* test NULL pointer and buffer size == 0*/
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 0, NULL) == 0);
|
||||||
|
|
||||||
|
/* test bad pointer */
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 5, (PBYTE)0x500) == 0);
|
||||||
|
|
||||||
|
/* Test if we can set a number of bytes between lines */
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 5, Bits) == 5);
|
||||||
|
|
||||||
|
/* Test alignment */
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 4, Bits+1) == 4);
|
||||||
|
|
||||||
|
/* Test 1 byte too much */
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 10, Bits) == 10);
|
||||||
|
|
||||||
|
/* Test one row too much */
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 12, Bits) == 12);
|
||||||
|
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 13, Bits) == 12);
|
||||||
|
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, 100, Bits) == 12);
|
||||||
|
|
||||||
|
/* Test huge bytes count */
|
||||||
|
TEST(NtGdiSetBitmapBits(hBitmap, 12345678, Bits) == 0);
|
||||||
|
|
||||||
|
/* Test negative bytes count */
|
||||||
|
RTEST(NtGdiSetBitmapBits(hBitmap, -5, Bits) == 0);
|
||||||
|
|
||||||
|
RTEST(GetLastError() == ERROR_SUCCESS);
|
||||||
|
|
||||||
|
DeleteObject(hBitmap);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
#include "../w32knapi.h"
|
||||||
|
|
||||||
|
/* First the call stub */
|
||||||
|
DWORD STDCALL
|
||||||
|
NtUserCountClipboardFormats(VOID)
|
||||||
|
{
|
||||||
|
DWORD p;
|
||||||
|
return Syscall(L"NtUserCountClipboardFormats", 0, &p);
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
Test_NtUserCountClipboardFormats(PTESTINFO pti)
|
||||||
|
{
|
||||||
|
TEST(NtUserCountClipboardFormats() < 1000);
|
||||||
|
TEST(TRUE);
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
37
rostests/apitests/w32knapi/testlist.c
Normal file
37
rostests/apitests/w32knapi/testlist.c
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
#include "..\apitest.h"
|
||||||
|
|
||||||
|
/* include the tests */
|
||||||
|
|
||||||
|
#include "ntdd/NtGdiDdCreateDirectDrawObject.c"
|
||||||
|
#include "ntdd/NtGdiDdDeleteDirectDrawObject.c"
|
||||||
|
#include "ntdd/NtGdiDdQueryDirectDrawObject.c"
|
||||||
|
|
||||||
|
#include "ntgdi/NtGdiArcInternal.c"
|
||||||
|
#include "ntgdi/NtGdiSetBitmapBits.c"
|
||||||
|
#include "ntgdi/NtGdiGetBitmapBits.c"
|
||||||
|
|
||||||
|
#include "ntuser/NtUserCountClipboardFormats.c"
|
||||||
|
|
||||||
|
/* The List of tests */
|
||||||
|
TESTENTRY TestList[] =
|
||||||
|
{
|
||||||
|
/* DirectDraw */
|
||||||
|
{ L"NtGdiDdCreateDirectDrawObject", Test_NtGdiDdCreateDirectDrawObject },
|
||||||
|
{ L"NtGdiDdDeleteDirectDrawObject", Test_NtGdiDdDeleteDirectDrawObject },
|
||||||
|
{ L"NtGdiDdQueryDirectDrawObject", Test_NtGdiDdQueryDirectDrawObject },
|
||||||
|
|
||||||
|
/* ntgdi */
|
||||||
|
{ L"NtGdiArcInternal", Test_NtGdiArcInternal },
|
||||||
|
{ L"NtGdiGetBitmapBits", Test_NtGdiGetBitmapBits },
|
||||||
|
{ L"NtGdiSetBitmapBits", Test_NtGdiSetBitmapBits },
|
||||||
|
|
||||||
|
/* ntuser */
|
||||||
|
{ L"NtUserCountClipboardFormats", Test_NtUserCountClipboardFormats }
|
||||||
|
};
|
||||||
|
|
||||||
|
/* The function that gives us the number of tests */
|
||||||
|
INT NumTests(void)
|
||||||
|
{
|
||||||
|
return sizeof(TestList) / sizeof(TESTENTRY);
|
||||||
|
}
|
||||||
|
|
161
rostests/apitests/w32knapi/w32knapi.c
Normal file
161
rostests/apitests/w32knapi/w32knapi.c
Normal file
|
@ -0,0 +1,161 @@
|
||||||
|
#include "w32knapi.h"
|
||||||
|
|
||||||
|
HINSTANCE g_hInstance;
|
||||||
|
HMODULE g_hModule = NULL;
|
||||||
|
INT g_nOs;
|
||||||
|
PSYSCALL_ENTRY g_SyscallTable;
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
InitOsVersion()
|
||||||
|
{
|
||||||
|
OSVERSIONINFOW osv;
|
||||||
|
LPWSTR pszRos;
|
||||||
|
|
||||||
|
osv.dwOSVersionInfoSize = sizeof(osv);
|
||||||
|
GetVersionExW(&osv);
|
||||||
|
pszRos = osv.szCSDVersion + wcslen(osv.szCSDVersion) + 1;
|
||||||
|
/* make sure the string is zero terminated */
|
||||||
|
pszRos[127] = 0;
|
||||||
|
/* Is ReactOS? */
|
||||||
|
if (wcsstr(pszRos, L"ReactOS") != NULL)
|
||||||
|
{
|
||||||
|
printf("Running on %ls\n", pszRos);
|
||||||
|
g_hModule = LoadLibraryW(L"w32kdll.dll");
|
||||||
|
if (!g_hModule)
|
||||||
|
{
|
||||||
|
printf("w32kdll.dll not found!\n");
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
g_nOs = OS_REACTOS;
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (osv.dwPlatformId != VER_PLATFORM_WIN32_NT)
|
||||||
|
{
|
||||||
|
printf("Unsupported OS\n");
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (osv.dwMajorVersion == 5 && osv.dwMinorVersion == 1 && osv.dwBuildNumber == 2600)
|
||||||
|
{
|
||||||
|
printf("Running on Windows XP, build 2600\n");
|
||||||
|
g_nOs = OS_WINDOWS;
|
||||||
|
g_SyscallTable = SyscallTable_XP_2600;
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("Unsupported OS\n");
|
||||||
|
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static BOOL
|
||||||
|
RosSyscall(LPWSTR lpszFunction, int cParams, void* pParams, DWORD* pResult)
|
||||||
|
{
|
||||||
|
DWORD ret;
|
||||||
|
char szFunctionName[MAX_PATH];
|
||||||
|
int ParamSize = cParams * 4;
|
||||||
|
|
||||||
|
sprintf(szFunctionName, "%ls", lpszFunction);
|
||||||
|
FARPROC proc = (FARPROC)GetProcAddress(g_hModule, szFunctionName);
|
||||||
|
if (!proc)
|
||||||
|
{
|
||||||
|
printf("Couldn't find proc: %s\n", szFunctionName);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
asm volatile
|
||||||
|
(
|
||||||
|
"subl %%eax, %%esp;" // calculate new stack pos
|
||||||
|
"movl %%esp, %%edi;" // destination is stackpointer
|
||||||
|
"cld;" // clear direction flag
|
||||||
|
"rep movsd;" // copy params to the stack
|
||||||
|
"call *%%edx" // call function
|
||||||
|
: "=a" (ret)
|
||||||
|
: "c" (cParams), "a" (ParamSize), "S"(pParams), "d"(proc)
|
||||||
|
);
|
||||||
|
|
||||||
|
*pResult = ret;
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
static PSYSCALL_ENTRY
|
||||||
|
GetSyscallEntry(LPWSTR lpszFunction)
|
||||||
|
{
|
||||||
|
INT i;
|
||||||
|
|
||||||
|
for (i = 0; g_SyscallTable[i].lpszFunction != NULL; i++)
|
||||||
|
{
|
||||||
|
if (wcscmp(g_SyscallTable[i].lpszFunction, lpszFunction) == 0)
|
||||||
|
{
|
||||||
|
return &g_SyscallTable[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
static BOOL
|
||||||
|
WinSyscall(LPWSTR pszFunction, void* pParams, void* pResult)
|
||||||
|
{
|
||||||
|
PSYSCALL_ENTRY pEntry = GetSyscallEntry(pszFunction);
|
||||||
|
DWORD ret;
|
||||||
|
|
||||||
|
asm volatile ("int $0x2e\n" : "=a"(ret): "a" (pEntry->nSyscallNum), "d" (pParams));\
|
||||||
|
*((DWORD*)pResult) = ret;
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
DWORD
|
||||||
|
Syscall(LPWSTR pszFunction, int cParams, void* pParams)
|
||||||
|
{
|
||||||
|
DWORD dwRet = 0;
|
||||||
|
|
||||||
|
if (g_nOs == OS_REACTOS)
|
||||||
|
{
|
||||||
|
RosSyscall(pszFunction, cParams, pParams, &dwRet);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
WinSyscall(pszFunction, pParams, &dwRet);
|
||||||
|
}
|
||||||
|
return dwRet;
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
IsFunctionPresent(LPWSTR lpszFunction)
|
||||||
|
{
|
||||||
|
if (g_nOs == OS_REACTOS)
|
||||||
|
{
|
||||||
|
char szFunctionName[MAX_PATH];
|
||||||
|
sprintf(szFunctionName, "%ls", lpszFunction);
|
||||||
|
return (GetProcAddress(g_hModule, szFunctionName) != NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
return (GetSyscallEntry(lpszFunction) != NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
int APIENTRY
|
||||||
|
WinMain(HINSTANCE hInstance,
|
||||||
|
HINSTANCE hPrevInstance,
|
||||||
|
LPSTR lpCmdLine,
|
||||||
|
int nCmdShow)
|
||||||
|
{
|
||||||
|
g_hInstance = hInstance;
|
||||||
|
|
||||||
|
printf("Win32k native API test\n");
|
||||||
|
|
||||||
|
/* Convert to gui thread */
|
||||||
|
IsGUIThread(TRUE);
|
||||||
|
|
||||||
|
if (!InitOsVersion())
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("\n");
|
||||||
|
|
||||||
|
TestMain(L"w32knapi.exe");
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
28
rostests/apitests/w32knapi/w32knapi.h
Normal file
28
rostests/apitests/w32knapi/w32knapi.h
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
#ifndef _W32KNAPI_H
|
||||||
|
#define _W32KNAPI_H
|
||||||
|
|
||||||
|
#include "..\apitest.h"
|
||||||
|
#include <ddk/winddi.h>
|
||||||
|
|
||||||
|
#define OS_UNSUPPORTED 0
|
||||||
|
#define OS_REACTOS 1
|
||||||
|
#define OS_WINDOWS 2
|
||||||
|
|
||||||
|
#define W32KAPI
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
LPWSTR lpszFunction;
|
||||||
|
INT nSyscallNum;
|
||||||
|
INT nParams;
|
||||||
|
} SYCALL_ENTRY, *PSYSCALL_ENTRY;
|
||||||
|
|
||||||
|
extern HINSTANCE g_hInstance;
|
||||||
|
extern SYCALL_ENTRY SyscallTable_XP_2600[];
|
||||||
|
extern HMODULE g_hModule;
|
||||||
|
extern INT g_nOsVer;
|
||||||
|
|
||||||
|
DWORD Syscall(LPWSTR lpszFunction, int cParams, void* pParams);
|
||||||
|
BOOL InitOsVersion();
|
||||||
|
|
||||||
|
#endif /* _W32KNAPI_H */
|
13
rostests/apitests/w32knapi/w32knapi.rbuild
Normal file
13
rostests/apitests/w32knapi/w32knapi.rbuild
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
<module name="w32knapi" type="win32cui">
|
||||||
|
<include base="w32knapi">.</include>
|
||||||
|
<define name="__USE_W32API" />
|
||||||
|
<define name="_WIN32_WINNT">0x0501</define>
|
||||||
|
<library>kernel32</library>
|
||||||
|
<library>user32</library>
|
||||||
|
<library>gdi32</library>
|
||||||
|
<library>shell32</library>
|
||||||
|
<file>w32knapi.c</file>
|
||||||
|
<file>testlist.c</file>
|
||||||
|
<file>xp-2600.c</file>
|
||||||
|
<file>..\apitest.c</file>
|
||||||
|
</module>
|
677
rostests/apitests/w32knapi/xp-2600.c
Normal file
677
rostests/apitests/w32knapi/xp-2600.c
Normal file
|
@ -0,0 +1,677 @@
|
||||||
|
#include "w32knapi.h"
|
||||||
|
|
||||||
|
SYCALL_ENTRY
|
||||||
|
SyscallTable_XP_2600[] =
|
||||||
|
{
|
||||||
|
{L"NtGdiAbortDoc", 0x1000,1},
|
||||||
|
{L"NtGdiAbortPath", 0x1001,1},
|
||||||
|
{L"NtGdiAddFontResourceW", 0x1002,6},
|
||||||
|
{L"NtGdiAddRemoteFontToDC", 0x1003,4},
|
||||||
|
{L"NtGdiAddFontMemResourceEx", 0x1004,5},
|
||||||
|
{L"NtGdiRemoveMergeFont", 0x1005,2},
|
||||||
|
{L"NtGdiAddRemoteMMInstanceToDC", 0x1006,3},
|
||||||
|
{L"NtGdiAlphaBlend", 0x1007,12},
|
||||||
|
{L"NtGdiAngleArc", 0x1008,6},
|
||||||
|
{L"NtGdiAnyLinkedFonts", 0x1009,0},
|
||||||
|
{L"GreFontIsLinked", 0x100A,1},
|
||||||
|
{L"NtGdiArcInternal", 0x100B,10},
|
||||||
|
{L"NtGdiBeginPath", 0x100C,1},
|
||||||
|
{L"NtGdiBitBlt", 0x100D,11},
|
||||||
|
{L"NtGdiCancelDC", 0x100E,1},
|
||||||
|
{L"NtGdiCheckBitmapBits", 0x100F,8},
|
||||||
|
{L"NtGdiCloseFigure", 0x1010,1},
|
||||||
|
{L"NtGdiClearBitmapAttributes", 0x1011,2},
|
||||||
|
{L"NtGdiClearBrushAttributes", 0x1012,2},
|
||||||
|
{L"NtGdiColorCorrectPalette", 0x1013,6},
|
||||||
|
{L"NtGdiCombineRgn", 0x1014,4},
|
||||||
|
{L"NtGdiCombineTransform", 0x1015,3},
|
||||||
|
{L"NtGdiComputeXformCoefficients", 0x1016,1},
|
||||||
|
{L"NtGdiConsoleTextOut", 0x1017,4},
|
||||||
|
{L"NtGdiConvertMetafileRect", 0x1018,2},
|
||||||
|
{L"NtGdiCreateBitmap", 0x1019,5},
|
||||||
|
{L"NtGdiCreateClientObj", 0x101A,1},
|
||||||
|
{L"NtGdiCreateColorSpace", 0x101B,1},
|
||||||
|
{L"NtGdiCreateColorTransform", 0x101C,8},
|
||||||
|
{L"NtGdiCreateCompatibleBitmap", 0x101D,3},
|
||||||
|
{L"NtGdiCreateCompatibleDC", 0x101E,1},
|
||||||
|
{L"NtGdiCreateDIBBrush", 0x101F,6},
|
||||||
|
{L"NtGdiCreateDIBitmapInternal", 0x1020,11},
|
||||||
|
{L"NtGdiCreateDIBSection", 0x1021,9},
|
||||||
|
{L"NtGdiCreateEllipticRgn", 0x1022,4},
|
||||||
|
{L"NtGdiCreateHalftonePalette", 0x1023,1},
|
||||||
|
{L"NtGdiCreateHatchBrushInternal", 0x1024,3},
|
||||||
|
{L"NtGdiCreateMetafileDC", 0x1025,1},
|
||||||
|
{L"NtGdiCreatePaletteInternal", 0x1026,2},
|
||||||
|
{L"NtGdiCreatePatternBrushInternal", 0x1027,3},
|
||||||
|
{L"NtGdiCreatePen", 0x1028,4},
|
||||||
|
{L"NtGdiCreateRectRgn", 0x1029,4},
|
||||||
|
{L"NtGdiCreateRoundRectRgn", 0x102A,6},
|
||||||
|
{L"NtGdiCreateServerMetaFile", 0x102B,6},
|
||||||
|
{L"NtGdiCreateSolidBrush", 0x102C,2},
|
||||||
|
{L"NtGdiD3dContextCreate", 0x102D,4},
|
||||||
|
{L"NtGdiD3dContextDestroy", 0x102E,1},
|
||||||
|
{L"NtGdiD3dContextDestroyAll", 0x102F,1},
|
||||||
|
{L"NtGdiD3dValidateTextureStageState", 0x1030,1},
|
||||||
|
{L"NtGdiD3dDrawPrimitives2", 0x1031,7},
|
||||||
|
{L"NtGdiDdGetDriverState", 0x1032,1},
|
||||||
|
{L"NtGdiDdAddAttachedSurface", 0x1033,3},
|
||||||
|
{L"NtGdiDdAlphaBlt", 0x1034,3},
|
||||||
|
{L"NtGdiDdAttachSurface", 0x1035,2},
|
||||||
|
{L"NtGdiDdBeginMoCompFrame", 0x1036,2},
|
||||||
|
{L"NtGdiDdBlt", 0x1037,3},
|
||||||
|
{L"NtGdiDdCanCreateSurface", 0x1038,2},
|
||||||
|
{L"NtGdiDdCanCreateD3DBuffer", 0x1039,2},
|
||||||
|
{L"NtGdiDdColorControl", 0x103A,2},
|
||||||
|
{L"NtGdiDdCreateDirectDrawObject", 0x103B,1},
|
||||||
|
{L"NtGdiDdCreateSurface", 0x103C,8},
|
||||||
|
{L"NtGdiDdCreateD3DBuffer", 0x103D,8},
|
||||||
|
{L"NtGdiDdCreateMoComp", 0x103E,2},
|
||||||
|
{L"NtGdiDdCreateSurfaceObject", 0x103F,6},
|
||||||
|
{L"NtGdiDdDeleteDirectDrawObject", 0x1040,1},
|
||||||
|
{L"NtGdiDdDeleteSurfaceObject", 0x1041,1},
|
||||||
|
{L"NtGdiDdDestroyMoComp", 0x1042,2},
|
||||||
|
{L"NtGdiDdDestroySurface", 0x1043,2},
|
||||||
|
{L"NtGdiDdDestroyD3DBuffer", 0x1044,1},
|
||||||
|
{L"NtGdiDdEndMoCompFrame", 0x1045,2},
|
||||||
|
{L"NtGdiDdFlip", 0x1046,5},
|
||||||
|
{L"NtGdiDdFlipToGDISurface", 0x1047,2},
|
||||||
|
{L"NtGdiDdGetAvailDriverMemory", 0x1048,2},
|
||||||
|
{L"NtGdiDdGetBltStatus", 0x1049,2},
|
||||||
|
{L"NtGdiDdGetDC", 0x104A,2},
|
||||||
|
{L"NtGdiDdGetDriverInfo", 0x104B,2},
|
||||||
|
{L"NtGdiDdGetDxHandle", 0x104C,3},
|
||||||
|
{L"NtGdiDdGetFlipStatus", 0x104D,2},
|
||||||
|
{L"NtGdiDdGetInternalMoCompInfo", 0x104E,2},
|
||||||
|
{L"NtGdiDdGetMoCompBuffInfo", 0x104F,2},
|
||||||
|
{L"NtGdiDdGetMoCompGuids", 0x1050,2},
|
||||||
|
{L"NtGdiDdGetMoCompFormats", 0x1051,2},
|
||||||
|
{L"NtGdiDdGetScanLine", 0x1052,2},
|
||||||
|
{L"NtGdiDdLock", 0x1053,3},
|
||||||
|
{L"NtGdiDdLockD3D", 0x1054,2},
|
||||||
|
{L"NtGdiDdQueryDirectDrawObject", 0x1055,11},
|
||||||
|
{L"NtGdiDdQueryMoCompStatus", 0x1056,2},
|
||||||
|
{L"NtGdiDdReenableDirectDrawObject", 0x1057,2},
|
||||||
|
{L"NtGdiDdReleaseDC", 0x1058,1},
|
||||||
|
{L"NtGdiDdRenderMoComp", 0x1059,2},
|
||||||
|
{L"NtGdiDdResetVisrgn", 0x105A,2},
|
||||||
|
{L"NtGdiDdSetColorKey", 0x105B,2},
|
||||||
|
{L"NtGdiDdSetExclusiveMode", 0x105C,2},
|
||||||
|
{L"NtGdiDdSetGammaRamp", 0x105D,3},
|
||||||
|
{L"NtGdiDdCreateSurfaceEx", 0x105E,3},
|
||||||
|
{L"NtGdiDdSetOverlayPosition", 0x105F,3},
|
||||||
|
{L"NtGdiDdUnattachSurface", 0x1060,2},
|
||||||
|
{L"NtGdiDdUnlock", 0x1061,2},
|
||||||
|
{L"NtGdiDdUnlockD3D", 0x1062,2},
|
||||||
|
{L"NtGdiDdUpdateOverlay", 0x1063,3},
|
||||||
|
{L"NtGdiDdWaitForVerticalBlank", 0x1064,2},
|
||||||
|
{L"NtGdiDvpCanCreateVideoPort", 0x1065,2},
|
||||||
|
{L"NtGdiDvpColorControl", 0x1066,2},
|
||||||
|
{L"NtGdiDvpCreateVideoPort", 0x1067,2},
|
||||||
|
{L"NtGdiDvpDestroyVideoPort", 0x1068,2},
|
||||||
|
{L"NtGdiDvpFlipVideoPort", 0x1069,4},
|
||||||
|
{L"NtGdiDvpGetVideoPortBandwidth", 0x106A,2},
|
||||||
|
{L"NtGdiDvpGetVideoPortField", 0x106B,2},
|
||||||
|
{L"NtGdiDvpGetVideoPortFlipStatus", 0x106C,2},
|
||||||
|
{L"NtGdiDvpGetVideoPortInputFormats", 0x106D,2},
|
||||||
|
{L"NtGdiDvpGetVideoPortLine", 0x106E,2},
|
||||||
|
{L"NtGdiDvpGetVideoPortOutputFormats", 0x106F,2},
|
||||||
|
{L"NtGdiDvpGetVideoPortConnectInfo", 0x1070,2},
|
||||||
|
{L"NtGdiDvpGetVideoSignalStatus", 0x1071,2},
|
||||||
|
{L"NtGdiDvpUpdateVideoPort", 0x1072,4},
|
||||||
|
{L"NtGdiDvpWaitForVideoPortSync", 0x1073,2},
|
||||||
|
{L"NtGdiDvpAcquireNotification", 0x1074,3},
|
||||||
|
{L"NtGdiDvpReleaseNotification", 0x1075,2},
|
||||||
|
{L"NtGdiDxgGenericThunk", 0x1076,6},
|
||||||
|
{L"NtGdiDeleteClientObj", 0x1077,1},
|
||||||
|
{L"bDeleteColorSpace", 0x1078,1},
|
||||||
|
{L"NtGdiDeleteColorTransform", 0x1079,2},
|
||||||
|
{L"NtGdiDeleteObjectApp", 0x107A,1},
|
||||||
|
{L"NtGdiDescribePixelFormat", 0x107B,4},
|
||||||
|
{L"NtGdiGetPerBandInfo", 0x107C,2},
|
||||||
|
{L"NtGdiDoBanding", 0x107D,4},
|
||||||
|
{L"NtGdiDoPalette", 0x107E,6},
|
||||||
|
{L"NtGdiDrawEscape", 0x107F,4},
|
||||||
|
{L"NtGdiEllipse", 0x1080,5},
|
||||||
|
{L"GreEnableEUDC", 0x1081,1},
|
||||||
|
{L"NtGdiEndDoc", 0x1082,1},
|
||||||
|
{L"NtGdiEndPage", 0x1083,1},
|
||||||
|
{L"NtGdiEndPath", 0x1084,1},
|
||||||
|
{L"NtGdiEnumFontChunk", 0x1085,5},
|
||||||
|
{L"NtGdiEnumFontClose", 0x1086,1},
|
||||||
|
{L"NtGdiEnumFontOpen", 0x1087,7},
|
||||||
|
{L"NtGdiEnumObjects", 0x1088,4},
|
||||||
|
{L"NtGdiEqualRgn", 0x1089,2},
|
||||||
|
{L"NtGdiEudcLoadUnloadLink", 0x108A,7},
|
||||||
|
{L"NtGdiExcludeClipRect", 0x108B,5},
|
||||||
|
{L"NtGdiExtCreatePen", 0x108C,11},
|
||||||
|
{L"NtGdiExtCreateRegion", 0x108D,3},
|
||||||
|
{L"NtGdiExtEscape", 0x108E,8},
|
||||||
|
{L"NtGdiExtFloodFill", 0x108F,5},
|
||||||
|
{L"NtGdiExtGetObjectW", 0x1090,3},
|
||||||
|
{L"NtGdiExtSelectClipRgn", 0x1091,3},
|
||||||
|
{L"NtGdiExtTextOutW", 0x1092,9},
|
||||||
|
{L"NtGdiFillPath", 0x1093,1},
|
||||||
|
{L"NtGdiFillRgn", 0x1094,3},
|
||||||
|
{L"NtGdiFlattenPath", 0x1095,1},
|
||||||
|
{L"NtGdiFlushUserBatch", 0x1096,0},
|
||||||
|
{L"NtGdiFlush", 0x1097,0},
|
||||||
|
{L"NtGdiForceUFIMapping", 0x1098,2},
|
||||||
|
{L"NtGdiFrameRgn", 0x1099,5},
|
||||||
|
{L"NtGdiFullscreenControl", 0x109A,5},
|
||||||
|
{L"NtGdiGetAndSetDCDword", 0x109B,4},
|
||||||
|
{L"NtGdiGetAppClipBox", 0x109C,2},
|
||||||
|
{L"NtGdiGetBitmapBits", 0x109D,3},
|
||||||
|
{L"NtGdiGetBitmapDimension", 0x109E,2},
|
||||||
|
{L"NtGdiGetBoundsRect", 0x109F,3},
|
||||||
|
{L"NtGdiGetCharABCWidthsW", 0x10A0,6},
|
||||||
|
{L"NtGdiGetCharacterPlacementW", 0x10A1,6},
|
||||||
|
{L"NtGdiGetCharSet", 0x10A2,1},
|
||||||
|
{L"NtGdiGetCharWidthW", 0x10A3,6},
|
||||||
|
{L"NtGdiGetCharWidthInfo", 0x10A4,2},
|
||||||
|
{L"NtGdiGetColorAdjustment", 0x10A5,2},
|
||||||
|
{L"NtGdiGetColorSpaceforBitmap", 0x10A6,1},
|
||||||
|
{L"NtGdiGetDCDword", 0x10A7,3},
|
||||||
|
{L"NtGdiGetDCforBitmap", 0x10A8,1},
|
||||||
|
{L"NtGdiGetDCObject", 0x10A9,2},
|
||||||
|
{L"NtGdiGetDCPoint", 0x10AA,3},
|
||||||
|
{L"NtGdiGetDeviceCaps", 0x10AB,2},
|
||||||
|
{L"NtGdiGetDeviceGammaRamp", 0x10AC,2},
|
||||||
|
{L"NtGdiGetDeviceCapsAll", 0x10AD,2},
|
||||||
|
{L"NtGdiGetDIBitsInternal", 0x10AE,9},
|
||||||
|
{L"NtGdiGetETM", 0x10AF,2},
|
||||||
|
{L"NtGdiGetEudcTimeStampEx", 0x10B0,3},
|
||||||
|
{L"NtGdiGetFontData", 0x10B1,5},
|
||||||
|
{L"NtGdiGetFontResourceInfoInternalW", 0x10B2,7},
|
||||||
|
{L"NtGdiGetGlyphIndicesW", 0x10B3,5},
|
||||||
|
{L"NtGdiGetGlyphIndicesWInternal", 0x10B4,6},
|
||||||
|
{L"NtGdiGetGlyphOutline", 0x10B5,8},
|
||||||
|
{L"NtGdiGetKerningPairs", 0x10B6,3},
|
||||||
|
{L"NtGdiGetLinkedUFIs", 0x10B7,3},
|
||||||
|
{L"NtGdiGetMiterLimit", 0x10B8,2},
|
||||||
|
{L"NtGdiGetMonitorID", 0x10B9,3},
|
||||||
|
{L"NtGdiGetNearestColor", 0x10BA,2},
|
||||||
|
{L"NtGdiGetNearestPaletteIndex", 0x10BB,2},
|
||||||
|
{L"NtGdiGetObjectBitmapHandle", 0x10BC,2},
|
||||||
|
{L"NtGdiGetOutlineTextMetricsInternalW", 0x10BD,4},
|
||||||
|
{L"NtGdiGetPath", 0x10BE,4},
|
||||||
|
{L"NtGdiGetPixel", 0x10BF,3},
|
||||||
|
{L"NtGdiGetRandomRgn", 0x10C0,3},
|
||||||
|
{L"NtGdiGetRasterizerCaps", 0x10C1,2},
|
||||||
|
{L"NtGdiGetRealizationInfo", 0x10C2,3},
|
||||||
|
{L"NtGdiGetRegionData", 0x10C3,3},
|
||||||
|
{L"NtGdiGetRgnBox", 0x10C4,2},
|
||||||
|
{L"NtGdiGetServerMetaFileBits", 0x10C5,7},
|
||||||
|
{L"NtGdiGetSpoolMessage", 0x10C6,4},
|
||||||
|
{L"NtGdiGetStats", 0x10C7,5},
|
||||||
|
{L"NtGdiGetStockObject", 0x10C8,1},
|
||||||
|
{L"NtGdiGetStringBitmapW", 0x10C9,5},
|
||||||
|
{L"NtGdiGetSystemPaletteUse", 0x10CA,1},
|
||||||
|
{L"NtGdiGetTextCharsetInfo", 0x10CB,3},
|
||||||
|
{L"NtGdiGetTextExtent", 0x10CC,5},
|
||||||
|
{L"NtGdiGetTextExtentExW", 0x10CD,8},
|
||||||
|
{L"NtGdiGetTextFaceW", 0x10CE,4},
|
||||||
|
{L"NtGdiGetTextMetricsW", 0x10CF,3},
|
||||||
|
{L"NtGdiGetTransform", 0x10D0,3},
|
||||||
|
{L"NtGdiGetUFI", 0x10D1,6},
|
||||||
|
{L"NtGdiGetEmbUFI", 0x10D2,7},
|
||||||
|
{L"NtGdiGetUFIPathname", 0x10D3,10},
|
||||||
|
{L"GreGetEmbedFonts", 0x10D4,0},
|
||||||
|
{L"NtGdiChangeGhostFont", 0x10D5,2},
|
||||||
|
{L"NtGdiAddEmbFontToDC", 0x10D6,2},
|
||||||
|
{L"NtGdiGetFontUnicodeRanges", 0x10D7,2},
|
||||||
|
{L"NtGdiGetWidthTable", 0x10D8,7},
|
||||||
|
{L"NtGdiGradientFill", 0x10D9,6},
|
||||||
|
{L"NtGdiHfontCreate", 0x10DA,5},
|
||||||
|
{L"NtGdiIcmBrushInfo", 0x10DB,8},
|
||||||
|
{L"NtGdiInit", 0x10DC,0},
|
||||||
|
{L"NtGdiInitSpool", 0x10DD,0},
|
||||||
|
{L"NtGdiIntersectClipRect", 0x10DE,5},
|
||||||
|
{L"NtGdiInvertRgn", 0x10DF,2},
|
||||||
|
{L"NtGdiLineTo", 0x10E0,3},
|
||||||
|
{L"NtGdiMakeFontDir", 0x10E1,5},
|
||||||
|
{L"NtGdiMakeInfoDC", 0x10E2,2},
|
||||||
|
{L"NtGdiMaskBlt", 0x10E3,13},
|
||||||
|
{L"NtGdiModifyWorldTransform", 0x10E4,3},
|
||||||
|
{L"NtGdiMonoBitmap", 0x10E5,1},
|
||||||
|
{L"NtGdiMoveTo", 0x10E6,4},
|
||||||
|
{L"NtGdiOffsetClipRgn", 0x10E7,3},
|
||||||
|
{L"NtGdiOffsetRgn", 0x10E8,3},
|
||||||
|
{L"NtGdiOpenDCW", 0x10E9,7},
|
||||||
|
{L"NtGdiPatBlt", 0x10EA,6},
|
||||||
|
{L"NtGdiPolyPatBlt", 0x10EB,5},
|
||||||
|
{L"NtGdiPathToRegion", 0x10EC,1},
|
||||||
|
{L"NtGdiPlgBlt", 0x10ED,11},
|
||||||
|
{L"NtGdiPolyDraw", 0x10EE,4},
|
||||||
|
{L"NtGdiPolyPolyDraw", 0x10EF,5},
|
||||||
|
{L"NtGdiPolyTextOutW", 0x10F0,4},
|
||||||
|
{L"NtGdiPtInRegion", 0x10F1,3},
|
||||||
|
{L"NtGdiPtVisible", 0x10F2,3},
|
||||||
|
{L"NtGdiQueryFonts", 0x10F3,3},
|
||||||
|
{L"NtGdiQueryFontAssocInfo", 0x10F4,1},
|
||||||
|
{L"NtGdiRectangle", 0x10F5,5},
|
||||||
|
{L"NtGdiRectInRegion", 0x10F6,2},
|
||||||
|
{L"NtGdiRectVisible", 0x10F7,2},
|
||||||
|
{L"NtGdiRemoveFontResourceW", 0x10F8,6},
|
||||||
|
{L"NtGdiRemoveFontMemResourceEx", 0x10F9,1},
|
||||||
|
{L"NtGdiResetDC", 0x10FA,5},
|
||||||
|
{L"NtGdiResizePalette", 0x10FB,2},
|
||||||
|
{L"NtGdiRestoreDC", 0x10FC,2},
|
||||||
|
{L"NtGdiRoundRect", 0x10FD,7},
|
||||||
|
{L"NtGdiSaveDC", 0x10FE,1},
|
||||||
|
{L"NtGdiScaleViewportExtEx", 0x10FF,6},
|
||||||
|
{L"NtGdiScaleWindowExtEx", 0x1100,6},
|
||||||
|
{L"NtGdiSelectBitmap", 0x1101,2},
|
||||||
|
{L"GreSelectBitmap", 0x1101,2},
|
||||||
|
{L"NtGdiSelectBrush", 0x1102,2},
|
||||||
|
{L"NtGdiSelectClipPath", 0x1103,2},
|
||||||
|
{L"NtGdiSelectFont", 0x1104,2},
|
||||||
|
{L"NtGdiSelectPen", 0x1105,2},
|
||||||
|
{L"NtGdiSetBitmapAttributes", 0x1106,2},
|
||||||
|
{L"NtGdiSetBitmapBits", 0x1107,3},
|
||||||
|
{L"NtGdiSetBitmapDimension", 0x1108,4},
|
||||||
|
{L"NtGdiSetBoundsRect", 0x1109,3},
|
||||||
|
{L"NtGdiSetBrushAttributes", 0x110A,2},
|
||||||
|
{L"NtGdiSetBrushOrg", 0x110B,4},
|
||||||
|
{L"NtGdiSetColorAdjustment", 0x110C,2},
|
||||||
|
{L"NtGdiSetColorSpace", 0x110D,2},
|
||||||
|
{L"NtGdiSetDeviceGammaRamp", 0x110E,2},
|
||||||
|
{L"NtGdiSetDIBitsToDeviceInternal", 0x110F,16},
|
||||||
|
{L"NtGdiSetFontEnumeration", 0x1110,1},
|
||||||
|
{L"NtGdiSetFontXform", 0x1111,3},
|
||||||
|
{L"NtGdiSetIcmMode", 0x1112,3},
|
||||||
|
{L"NtGdiSetLinkedUFIs", 0x1113,3},
|
||||||
|
{L"NtGdiSetMagicColors", 0x1114,3},
|
||||||
|
{L"NtGdiSetMetaRgn", 0x1115,1},
|
||||||
|
{L"NtGdiSetMiterLimit", 0x1116,3},
|
||||||
|
{L"NtGdiGetDeviceWidth", 0x1117,1},
|
||||||
|
{L"NtGdiMirrorWindowOrg", 0x1118,1},
|
||||||
|
{L"NtGdiSetLayout", 0x1119,3},
|
||||||
|
{L"NtGdiSetPixel", 0x111A,4},
|
||||||
|
{L"NtGdiSetPixelFormat", 0x111B,2},
|
||||||
|
{L"NtGdiSetRectRgn", 0x111C,5},
|
||||||
|
{L"NtGdiSetSystemPaletteUse", 0x111D,2},
|
||||||
|
{L"NtGdiSetTextJustification", 0x111E,3},
|
||||||
|
{L"NtGdiSetupPublicCFONT", 0x111F,3},
|
||||||
|
{L"NtGdiSetVirtualResolution", 0x1120,5},
|
||||||
|
{L"NtGdiSetSizeDevice", 0x1121,3},
|
||||||
|
{L"NtGdiStartDoc", 0x1122,4},
|
||||||
|
{L"NtGdiStartPage", 0x1123,1},
|
||||||
|
{L"NtGdiStretchBlt", 0x1124,12},
|
||||||
|
{L"NtGdiStretchDIBitsInternal", 0x1125, 16},
|
||||||
|
{L"NtGdiStrokeAndFillPath", 0x1126,1},
|
||||||
|
{L"NtGdiStrokePath", 0x1127,1},
|
||||||
|
{L"NtGdiSwapBuffers", 0x1128,1},
|
||||||
|
{L"NtGdiTransformPoints", 0x1129,5},
|
||||||
|
{L"NtGdiTransparentBlt", 0x112A,11},
|
||||||
|
{L"NtGdiUnloadPrinterDriver", 0x112B,2},
|
||||||
|
{L"NtGdiUMPDEngFreeUserMem", 0x112C,1},
|
||||||
|
{L"NtGdiUnmapMemFont", 0x112C,1},
|
||||||
|
{L"NtGdiUnrealizeObject", 0x112D,1},
|
||||||
|
{L"NtGdiUpdateColors", 0x112E,1},
|
||||||
|
{L"NtGdiWidenPath", 0x112F,1},
|
||||||
|
{L"NtUserActivateKeyboardLayout", 0x1130,2},
|
||||||
|
{L"NtUserAlterWindowStyle", 0x1131,3},
|
||||||
|
{L"NtUserAssociateInputContext", 0x1132,3},
|
||||||
|
{L"NtUserAttachThreadInput", 0x1133,3},
|
||||||
|
{L"NtUserBeginPaint", 0x1134,2},
|
||||||
|
{L"NtUserBitBltSysBmp", 0x1135,8},
|
||||||
|
{L"NtUserBlockInput", 0x1136,1},
|
||||||
|
{L"NtUserBuildHimcList", 0x1137,4},
|
||||||
|
{L"NtUserBuildHwndList", 0x1138,7},
|
||||||
|
{L"NtUserBuildNameList", 0x1139,4},
|
||||||
|
{L"NtUserBuildPropList", 0x113A,4},
|
||||||
|
{L"NtUserCallHwnd", 0x113B,2},
|
||||||
|
{L"NtUserCallHwndLock", 0x113C,2},
|
||||||
|
{L"NtUserCallHwndOpt", 0x113D,2},
|
||||||
|
{L"NtUserCallHwndParam", 0x113E,3},
|
||||||
|
{L"NtUserCallHwndParamLock", 0x113F,3},
|
||||||
|
{L"NtUserCallMsgFilter", 0x1140,2},
|
||||||
|
{L"NtUserCallNextHookEx", 0x1141,4},
|
||||||
|
{L"NtUserCallNoParam", 0x1142,1},
|
||||||
|
{L"NtUserCallOneParam", 0x1143,2},
|
||||||
|
{L"NtUserCallTwoParam", 0x1144,3},
|
||||||
|
{L"NtUserChangeClipboardChain", 0x1145,2},
|
||||||
|
{L"NtUserChangeDisplaySettings", 0x1146,5},
|
||||||
|
{L"NtUserCheckImeHotKey", 0x1147,2},
|
||||||
|
{L"NtUserCheckMenuItem", 0x1148,3},
|
||||||
|
{L"NtUserChildWindowFromPointEx", 0x1149,4},
|
||||||
|
{L"NtUserClipCursor", 0x114A,1},
|
||||||
|
{L"NtUserCloseClipboard", 0x114B,0},
|
||||||
|
{L"NtUserCloseDesktop", 0x114C,1},
|
||||||
|
{L"NtUserCloseWindowStation", 0x114D,1},
|
||||||
|
{L"NtUserConsoleControl", 0x114E,3},
|
||||||
|
{L"NtUserConvertMemHandle", 0x114F,2},
|
||||||
|
{L"NtUserCopyAcceleratorTable", 0x1150,3},
|
||||||
|
{L"NtUserCountClipboardFormats", 0x1151,0},
|
||||||
|
{L"NtUserCreateAcceleratorTable", 0x1152,2},
|
||||||
|
{L"NtUserCreateCaret", 0x1153,4},
|
||||||
|
{L"NtUserCreateDesktop", 0x1154,5},
|
||||||
|
{L"NtUserCreateInputContext", 0x1155,1},
|
||||||
|
{L"NtUserCreateLocalMemHandle", 0x1156,4},
|
||||||
|
{L"NtUserCreateWindowEx", 0x1157,16},
|
||||||
|
{L"NtUserCreateWindowStation", 0x1158,7},
|
||||||
|
{L"NtUserDdeGetQualityOfService", 0x1159,3},
|
||||||
|
{L"NtUserDdeInitialize", 0x115A,5},
|
||||||
|
{L"NtUserDdeSetQualityOfService", 0x115B,3},
|
||||||
|
{L"NtUserDeferWindowPos", 0x115C,8},
|
||||||
|
{L"NtUserDefSetText", 0x115D,2},
|
||||||
|
{L"NtUserDeleteMenu", 0x115E,3},
|
||||||
|
{L"NtUserDestroyAcceleratorTable", 0x115F,1},
|
||||||
|
{L"NtUserDestroyCursor", 0x1160,2},
|
||||||
|
{L"NtUserDestroyInputContext", 0x1161,1},
|
||||||
|
{L"NtUserDestroyMenu", 0x1162,1},
|
||||||
|
{L"NtUserDestroyWindow", 0x1163,1},
|
||||||
|
{L"NtUserDisableThreadIme", 0x1164,1},
|
||||||
|
{L"NtUserDispatchMessage", 0x1165,1},
|
||||||
|
{L"NtUserDragDetect", 0x1166,3},
|
||||||
|
{L"NtUserDragObject", 0x1167,5},
|
||||||
|
{L"NtUserDrawAnimatedRects", 0x1168,4},
|
||||||
|
{L"NtUserDrawCaption", 0x1169,4},
|
||||||
|
{L"NtUserDrawCaptionTemp", 0x116A,7},
|
||||||
|
{L"NtUserDrawIconEx", 0x116B,11},
|
||||||
|
{L"NtUserDrawMenuBarTemp", 0x116C,5},
|
||||||
|
{L"NtUserEmptyClipboard", 0x116D,0},
|
||||||
|
{L"NtUserEnableMenuItem", 0x116E,3},
|
||||||
|
{L"NtUserEnableScrollBar", 0x116F,3},
|
||||||
|
{L"NtUserEndDeferWindowPosEx", 0x1170,2},
|
||||||
|
{L"NtUserEndMenu", 0x1171,0},
|
||||||
|
{L"NtUserEndPaint", 0x1172,2},
|
||||||
|
{L"NtUserEnumDisplayDevices", 0x1173,4},
|
||||||
|
{L"NtUserEnumDisplayMonitors", 0x1174,4},
|
||||||
|
{L"NtUserEnumDisplaySettings", 0x1175,4},
|
||||||
|
{L"NtUserEvent", 0x1176,1},
|
||||||
|
{L"NtUserExcludeUpdateRgn", 0x1177,2},
|
||||||
|
{L"NtUserFillWindow", 0x1178,4},
|
||||||
|
{L"NtUserFindExistingCursorIcon", 0x1179,3},
|
||||||
|
{L"NtUserFindWindowEx", 0x117A,5},
|
||||||
|
{L"NtUserFlashWindowEx", 0x117B,1},
|
||||||
|
{L"NtUserGetAltTabInfo", 0x117C,6},
|
||||||
|
{L"NtUserGetAncestor", 0x117D,2},
|
||||||
|
{L"NtUserGetAppImeLevel", 0x117E,1},
|
||||||
|
{L"NtUserGetAsyncKeyState", 0x117F,1},
|
||||||
|
{L"NtUserGetAtomName", 0x1180,2},
|
||||||
|
{L"NtUserGetCaretBlinkTime", 0x1181,0},
|
||||||
|
{L"NtUserGetCaretPos", 0x1182,1},
|
||||||
|
{L"NtUserGetClassInfo", 0x1183,5},
|
||||||
|
{L"NtUserGetClassName", 0x1184,3},
|
||||||
|
{L"NtUserGetClipboardData", 0x1185,2},
|
||||||
|
{L"NtUserGetClipboardFormatName", 0x1186,3},
|
||||||
|
{L"NtUserGetClipboardOwner", 0x1187,0},
|
||||||
|
{L"NtUserGetClipboardSequenceNumber", 0x1188,0},
|
||||||
|
{L"NtUserGetClipboardViewer", 0x1189,0},
|
||||||
|
{L"NtUserGetClipCursor", 0x118A,1},
|
||||||
|
{L"NtUserGetComboBoxInfo", 0x118B,2},
|
||||||
|
{L"NtUserGetControlBrush", 0x118C,3},
|
||||||
|
{L"NtUserGetControlColor", 0x118D,4},
|
||||||
|
{L"NtUserGetCPD", 0x118E,3},
|
||||||
|
{L"NtUserGetCursorFrameInfo", 0x118F,4},
|
||||||
|
{L"NtUserGetCursorInfo", 0x1190,1},
|
||||||
|
{L"NtUserGetDC", 0x1191,1},
|
||||||
|
{L"NtUserGetDCEx", 0x1192,3},
|
||||||
|
{L"NtUserGetDoubleClickTime", 0x1193,0},
|
||||||
|
{L"NtUserGetForegroundWindow", 0x1194,0},
|
||||||
|
{L"NtUserGetGuiResources", 0x1195,2},
|
||||||
|
{L"NtUserGetGUIThreadInfo", 0x1196,2},
|
||||||
|
{L"NtUserGetIconInfo", 0x1197,6},
|
||||||
|
{L"NtUserGetIconSize", 0x1198,4},
|
||||||
|
{L"NtUserGetImeHotKey", 0x1199,4},
|
||||||
|
{L"NtUserGetImeInfoEx", 0x119A,2},
|
||||||
|
{L"NtUserGetInternalWindowPos", 0x119B,3},
|
||||||
|
{L"NtUserGetKeyboardLayoutList", 0x119C,2},
|
||||||
|
{L"NtUserGetKeyboardLayoutName", 0x119D,1},
|
||||||
|
{L"NtUserGetKeyboardState", 0x119E,1},
|
||||||
|
{L"NtUserGetKeyNameText", 0x119F,3},
|
||||||
|
{L"NtUserGetKeyState", 0x11A0,1},
|
||||||
|
{L"NtUserGetListBoxInfo", 0x11A1,1},
|
||||||
|
{L"NtUserGetMenuBarInfo", 0x11A2,4},
|
||||||
|
{L"NtUserGetMenuIndex", 0x11A3,2},
|
||||||
|
{L"NtUserGetMenuItemRect", 0x11A4,4},
|
||||||
|
{L"NtUserGetMessage", 0x11A5,4},
|
||||||
|
{L"NtUserGetMouseMovePointsEx", 0x11A6,5},
|
||||||
|
{L"NtUserGetObjectInformation", 0x11A7,5},
|
||||||
|
{L"NtUserGetOpenClipboardWindow", 0x11A8,0},
|
||||||
|
{L"NtUserGetPriorityClipboardFormat", 0x11A9,2},
|
||||||
|
{L"NtUserGetProcessWindowStation", 0x11AA,0},
|
||||||
|
{L"NtUserGetRawInputBuffer", 0x11AB,3},
|
||||||
|
{L"NtUserGetRawInputData", 0x11AC,5},
|
||||||
|
{L"NtUserGetRawInputDeviceInfo", 0x11AD,4},
|
||||||
|
{L"NtUserGetRawInputDeviceList", 0x11AE,3},
|
||||||
|
{L"NtUserGetRegisteredRawInputDevices", 0x11AF,3},
|
||||||
|
{L"NtUserGetScrollBarInfo", 0x11B0,3},
|
||||||
|
{L"NtUserGetSystemMenu", 0x11B1,2},
|
||||||
|
{L"NtUserGetThreadDesktop", 0x11B2,2},
|
||||||
|
{L"NtUserGetThreadState", 0x11B3,1},
|
||||||
|
{L"NtUserGetTitleBarInfo", 0x11B4,2},
|
||||||
|
{L"NtUserGetUpdateRect", 0x11B5,3},
|
||||||
|
{L"NtUserGetUpdateRgn", 0x11B6,3},
|
||||||
|
{L"NtUserGetWindowDC", 0x11B7,1},
|
||||||
|
{L"NtUserGetWindowPlacement", 0x11B8,2},
|
||||||
|
{L"NtUserGetWOWClass", 0x11B9,2},
|
||||||
|
{L"NtUserHardErrorControl", 0x11BA,3},
|
||||||
|
{L"NtUserHideCaret", 0x11BB,1},
|
||||||
|
{L"NtUserHiliteMenuItem", 0x11BC,4},
|
||||||
|
{L"NtUserImpersonateDdeClientWindow", 0x11BD,2},
|
||||||
|
{L"NtUserInitialize", 0x11BE,3},
|
||||||
|
{L"NtUserInitializeClientPfnArrays", 0x11BF,4},
|
||||||
|
{L"NtUserInitTask", 0x11C0,12},
|
||||||
|
{L"NtUserInternalGetWindowText", 0x11C1,3},
|
||||||
|
{L"NtUserInvalidateRect", 0x11C2,3},
|
||||||
|
{L"NtUserInvalidateRgn", 0x11C3,3},
|
||||||
|
{L"NtUserIsClipboardFormatAvailable", 0x11C4,1},
|
||||||
|
{L"NtUserKillTimer", 0x11C5,2},
|
||||||
|
{L"NtUserLoadKeyboardLayoutEx", 0x11C6,7},
|
||||||
|
{L"NtUserLockWindowStation", 0x11C7,1},
|
||||||
|
{L"NtUserLockWindowUpdate", 0x11C8,1},
|
||||||
|
{L"NtUserLockWorkStation", 0x11C9,0},
|
||||||
|
{L"NtUserMapVirtualKeyEx", 0x11CA,4},
|
||||||
|
{L"NtUserMenuItemFromPoint", 0x11CB,4},
|
||||||
|
{L"NtUserMessageCall", 0x11CC,7},
|
||||||
|
{L"NtUserMinMaximize", 0x11CD,3},
|
||||||
|
{L"NtUserMNDragLeave", 0x11CE,0},
|
||||||
|
{L"NtUserMNDragOver", 0x11CF,2},
|
||||||
|
{L"NtUserModifyUserStartupInfoFlags", 0x11D0,2},
|
||||||
|
{L"NtUserMoveWindow", 0x11D1,6},
|
||||||
|
{L"NtUserNotifyIMEStatus", 0x11D2,3},
|
||||||
|
{L"NtUserNotifyProcessCreate", 0x11D3,4},
|
||||||
|
{L"NtUserNotifyWinEvent", 0x11D4,4},
|
||||||
|
{L"NtUserOpenClipboard", 0x11D5,2},
|
||||||
|
{L"NtUserOpenDesktop", 0x11D6,3},
|
||||||
|
{L"NtUserOpenInputDesktop", 0x11D7,3},
|
||||||
|
{L"NtUserOpenWindowStation", 0x11D8,2},
|
||||||
|
{L"NtUserPaintDesktop", 0x11D9,1},
|
||||||
|
{L"NtUserPeekMessage", 0x11DA,5},
|
||||||
|
{L"NtUserPostMessage", 0x11DB,4},
|
||||||
|
{L"NtUserPostThreadMessage", 0x11DC,4},
|
||||||
|
{L"NtUserPrintWindow", 0x11DD,3},
|
||||||
|
{L"NtUserProcessConnect", 0x11DE,3},
|
||||||
|
{L"NtUserQueryInformationThread", 0x11DF,5},
|
||||||
|
{L"NtUserQueryInputContext", 0x11E0,2},
|
||||||
|
{L"NtUserQuerySendMessage", 0x11E1,1},
|
||||||
|
{L"NtUserQueryUserCounters", 0x11E2,5},
|
||||||
|
{L"NtUserQueryWindow", 0x11E3,2},
|
||||||
|
{L"NtUserRealChildWindowFromPoint", 0x11E4,3},
|
||||||
|
{L"NtUserRealInternalGetMessage", 0x11E5,6},
|
||||||
|
{L"NtUserRealWaitMessageEx", 0x11E6,2},
|
||||||
|
{L"NtUserRedrawWindow", 0x11E7,4},
|
||||||
|
{L"NtUserRegisterClassExWOW", 0x11E8,7},
|
||||||
|
{L"NtUserRegisterUserApiHook", 0x11E9,2},
|
||||||
|
{L"NtUserRegisterHotKey", 0x11EA,4},
|
||||||
|
{L"NtUserRegisterRawInputDevices", 0x11EB,3},
|
||||||
|
{L"NtUserRegisterTasklist", 0x11EC,1},
|
||||||
|
{L"NtUserRegisterWindowMessage", 0x11ED,1},
|
||||||
|
{L"NtUserRemoveMenu", 0x11EE,3},
|
||||||
|
{L"NtUserRemoveProp", 0x11EF,2},
|
||||||
|
{L"NtUserResolveDesktop", 0x11F0,4},
|
||||||
|
{L"NtUserResolveDesktopForWOW", 0x11F1,1},
|
||||||
|
{L"NtUserSBGetParms", 0x11F2,4},
|
||||||
|
{L"NtUserScrollDC", 0x11F3,7},
|
||||||
|
{L"NtUserScrollWindowEx", 0x11F4,8},
|
||||||
|
{L"NtUserSelectPalette", 0x11F5,3},
|
||||||
|
{L"NtUserSendInput", 0x11F6,3},
|
||||||
|
{L"NtUserSetActiveWindow", 0x11F7,1},
|
||||||
|
{L"NtUserSetAppImeLevel", 0x11F8,2},
|
||||||
|
{L"NtUserSetCapture", 0x11F9,1},
|
||||||
|
{L"NtUserSetClassLong", 0x11FA,4},
|
||||||
|
{L"NtUserSetClassWord", 0x11FB,3},
|
||||||
|
{L"NtUserSetClipboardData", 0x11FC,3},
|
||||||
|
{L"NtUserSetClipboardViewer", 0x11FD,1},
|
||||||
|
{L"NtUserSetConsoleReserveKeys", 0x11FE,2},
|
||||||
|
{L"NtUserSetCursor", 0x11FF,1},
|
||||||
|
{L"NtUserSetCursorContents", 0x1200,2},
|
||||||
|
{L"NtUserSetCursorIconData", 0x1201,4},
|
||||||
|
{L"NtUserSetDbgTag", 0x1202,2},
|
||||||
|
{L"NtUserSetFocus", 0x1203,1},
|
||||||
|
{L"NtUserSetImeHotKey", 0x1204,5},
|
||||||
|
{L"NtUserSetImeInfoEx", 0x1205,1},
|
||||||
|
{L"NtUserSetImeOwnerWindow", 0x1206,2},
|
||||||
|
{L"NtUserSetInformationProcess", 0x1207,4},
|
||||||
|
{L"NtUserSetInformationThread", 0x1208,4},
|
||||||
|
{L"NtUserSetInternalWindowPos", 0x1209,4},
|
||||||
|
{L"NtUserSetKeyboardState", 0x120A,1},
|
||||||
|
{L"NtUserSetLogonNotifyWindow", 0x120B,1},
|
||||||
|
{L"NtUserSetMenu", 0x120C,3},
|
||||||
|
{L"NtUserSetMenuContextHelpId", 0x120D,2},
|
||||||
|
{L"NtUserSetMenuDefaultItem", 0x120E,3},
|
||||||
|
{L"NtUserSetMenuFlagRtoL", 0x120F,1},
|
||||||
|
{L"NtUserSetObjectInformation", 0x1210,4},
|
||||||
|
{L"NtUserSetParent", 0x1211,2},
|
||||||
|
{L"NtUserSetProcessWindowStation", 0x1212,1},
|
||||||
|
{L"NtUserSetProp", 0x1213,3},
|
||||||
|
{L"NtUserSetRipFlags", 0x1214,2},
|
||||||
|
{L"NtUserSetScrollInfo", 0x1215,4},
|
||||||
|
{L"NtUserSetShellWindowEx", 0x1216,2},
|
||||||
|
{L"NtUserSetSysColors", 0x1217,4},
|
||||||
|
{L"NtUserSetSystemCursor", 0x1218,2},
|
||||||
|
{L"NtUserSetSystemMenu", 0x1219,2},
|
||||||
|
{L"NtUserSetSystemTimer", 0x121A,4},
|
||||||
|
{L"NtUserSetThreadDesktop", 0x121B,1},
|
||||||
|
{L"NtUserSetThreadLayoutHandles", 0x121C,2},
|
||||||
|
{L"NtUserSetThreadState", 0x121D,2},
|
||||||
|
{L"NtUserSetTimer", 0x121E,4},
|
||||||
|
{L"NtUserSetWindowFNID", 0x121F,2},
|
||||||
|
{L"NtUserSetWindowLong", 0x1220,4},
|
||||||
|
{L"NtUserSetWindowPlacement", 0x1221,2},
|
||||||
|
{L"NtUserSetWindowPos", 0x1222,7},
|
||||||
|
{L"NtUserSetWindowRgn", 0x1223,3},
|
||||||
|
{L"NtUserSetWindowsHookAW", 0x1224,3},
|
||||||
|
{L"NtUserSetWindowsHookEx", 0x1225,6},
|
||||||
|
{L"NtUserSetWindowStationUser", 0x1226,4},
|
||||||
|
{L"NtUserSetWindowWord", 0x1227,3},
|
||||||
|
{L"NtUserSetWinEventHook", 0x1228,8},
|
||||||
|
{L"NtUserShowCaret", 0x1229,1},
|
||||||
|
{L"NtUserShowScrollBar", 0x122A,3},
|
||||||
|
{L"NtUserShowWindow", 0x122B,2},
|
||||||
|
{L"NtUserShowWindowAsync", 0x122C,2},
|
||||||
|
{L"NtUserSoundSentry", 0x122D,0},
|
||||||
|
{L"NtUserSwitchDesktop", 0x122E,1},
|
||||||
|
{L"NtUserSystemParametersInfo", 0x122F,4},
|
||||||
|
{L"NtUserTestForInteractiveUser", 0x1230,1},
|
||||||
|
{L"NtUserThunkedMenuInfo", 0x1231,2},
|
||||||
|
{L"NtUserThunkedMenuItemInfo", 0x1232,6},
|
||||||
|
{L"NtUserToUnicodeEx", 0x1233,7},
|
||||||
|
{L"NtUserTrackMouseEvent", 0x1234,1},
|
||||||
|
{L"NtUserTrackPopupMenuEx", 0x1235,6},
|
||||||
|
{L"NtUserCalcMenuBar", 0x1236,5},
|
||||||
|
{L"NtUserPaintMenuBar", 0x1237,6},
|
||||||
|
{L"NtUserTranslateAccelerator", 0x1238,3},
|
||||||
|
{L"NtUserTranslateMessage", 0x1239,2},
|
||||||
|
{L"NtUserUnhookWindowsHookEx", 0x123A,1},
|
||||||
|
{L"NtUserUnhookWinEvent", 0x123B,1},
|
||||||
|
{L"NtUserUnloadKeyboardLayout", 0x123C,1},
|
||||||
|
{L"NtUserUnlockWindowStation", 0x123D,1},
|
||||||
|
{L"NtUserUnregisterClass", 0x123E,3},
|
||||||
|
{L"NtUserUnregisterUserApiHook", 0x123F,0},
|
||||||
|
{L"NtUserUnregisterHotKey", 0x1240,2},
|
||||||
|
{L"NtUserUpdateInputContext", 0x1241,3},
|
||||||
|
{L"NtUserUpdateInstance", 0x1242,3},
|
||||||
|
{L"NtUserUpdateLayeredWindow", 0x1243,9},
|
||||||
|
{L"NtUserGetLayeredWindowAttributes", 0x1244,4},
|
||||||
|
{L"NtUserSetLayeredWindowAttributes", 0x1245,4},
|
||||||
|
{L"NtUserUpdatePerUserSystemParameters", 0x1246,2},
|
||||||
|
{L"NtUserUserHandleGrantAccess", 0x1247,3},
|
||||||
|
{L"NtUserValidateHandleSecure", 0x1248,1},
|
||||||
|
{L"NtUserValidateRect", 0x1249,2},
|
||||||
|
{L"Nt_Unknown", 0x124a, 3},
|
||||||
|
{L"NtUserVkKeyScanEx", 0x124b,3},
|
||||||
|
{L"NtUserWaitForInputIdle", 0x124c,3},
|
||||||
|
{L"NtUserWaitForMsgAndEvent", 0x124d,1},
|
||||||
|
{L"NtUserWaitMessage", 0x124e,0},
|
||||||
|
{L"NtUserWin32PoolAllocationStats", 0x124f,6},
|
||||||
|
{L"NtUserWindowFromPoint", 0x1250,2},
|
||||||
|
{L"NtUserYieldTask", 0x1251,0},
|
||||||
|
{L"NtUserRemoteConnect", 0x1252,3},
|
||||||
|
{L"NtUserRemoteRedrawRectangle", 0x1253,4},
|
||||||
|
{L"NtUserRemoteRedrawScreen", 0x1254,0},
|
||||||
|
{L"NtUserRemoteStopScreenUpdates", 0x1255,0},
|
||||||
|
{L"NtUserCtxDisplayIOCtl", 0x1256,3},
|
||||||
|
{L"NtGdiEngAssociateSurface", 0x1257,3},
|
||||||
|
{L"NtGdiEngCreateBitmap", 0x1258,6},
|
||||||
|
{L"NtGdiEngCreateDeviceSurface", 0x1259,4},
|
||||||
|
{L"NtGdiEngCreateDeviceBitmap", 0x125a,4},
|
||||||
|
{L"NtGdiEngCreatePalette", 0x125b,6},
|
||||||
|
{L"NtGdiEngComputeGlyphSet", 0x125c,3},
|
||||||
|
{L"NtGdiEngCopyBits", 0x125d,6},
|
||||||
|
{L"NtGdiEngDeletePalette", 0x125e,1},
|
||||||
|
{L"NtGdiEngDeleteSurface", 0x125f,1},
|
||||||
|
{L"NtGdiEngEraseSurface", 0x1260,3},
|
||||||
|
{L"NtGdiEngUnlockSurface", 0x1261,1},
|
||||||
|
{L"NtGdiEngLockSurface", 0x1262,1},
|
||||||
|
{L"NtGdiEngBitBlt", 0x1263,11},
|
||||||
|
{L"NtGdiEngStretchBlt", 0x1264,11},
|
||||||
|
{L"NtGdiEngPlgBlt", 0x1265,11},
|
||||||
|
{L"NtGdiEngMarkBandingSurface", 0x1266,1},
|
||||||
|
{L"NtGdiEngStrokePath", 0x1267,8},
|
||||||
|
{L"NtGdiEngFillPath", 0x1268,7},
|
||||||
|
{L"NtGdiEngStrokeAndFillPath", 0x1269,10},
|
||||||
|
{L"NtGdiEngPaint", 0x126a,5},
|
||||||
|
{L"NtGdiEngLineTo", 0x126b,9},
|
||||||
|
{L"NtGdiEngAlphaBlend", 0x126c,7},
|
||||||
|
{L"NtGdiEngGradientFill", 0x126d,10},
|
||||||
|
{L"NtGdiEngTransparentBlt", 0x126e,8},
|
||||||
|
{L"NtGdiEngTextOut", 0x126f,10},
|
||||||
|
{L"NtGdiEngStretchBltROP", 0x1270,13},
|
||||||
|
{L"NtGdiXLATEOBJ_cGetPalette", 0x1271,4},
|
||||||
|
{L"NtGdiXLATEOBJ_iXlate", 0x1272,2},
|
||||||
|
{L"NtGdiXLATEOBJ_hGetColorTransform", 0x1273,1},
|
||||||
|
{L"NtGdiCLIPOBJ_bEnum", 0x1274,3},
|
||||||
|
{L"NtGdiCLIPOBJ_cEnumStart", 0x1275,5},
|
||||||
|
{L"NtGdiCLIPOBJ_ppoGetPath", 0x1276,1},
|
||||||
|
{L"NtGdiEngDeletePath", 0x1277,1},
|
||||||
|
{L"NtGdiEngCreateClip", 0x1278,0},
|
||||||
|
{L"NtGdiEngDeleteClip", 0x1279,1},
|
||||||
|
{L"NtGdiBRUSHOBJ_ulGetBrushColor", 0x127a,1},
|
||||||
|
{L"NtGdiBRUSHOBJ_pvAllocRbrush", 0x127b,2},
|
||||||
|
{L"NtGdiBRUSHOBJ_pvGetRbrush", 0x127c,1},
|
||||||
|
{L"NtGdiBRUSHOBJ_hGetColorTransform", 0x127d,1},
|
||||||
|
{L"NtGdiXFORMOBJ_bApplyXform", 0x127e,5},
|
||||||
|
{L"NtGdiXFORMOBJ_iGetXform", 0x127f,2},
|
||||||
|
{L"NtGdiFONTOBJ_vGetInfo", 0x1280,3},
|
||||||
|
{L"NtGdiFONTOBJ_pxoGetXform", 0x1281,1},
|
||||||
|
{L"NtGdiFONTOBJ_cGetGlyphs", 0x1282,5},
|
||||||
|
{L"NtGdiFONTOBJ_pifi", 0x1283,1},
|
||||||
|
{L"NtGdiFONTOBJ_pfdg", 0x1284,1},
|
||||||
|
{L"NtGdiFONTOBJ_pQueryGlyphAttrs", 0x1285,2},
|
||||||
|
{L"NtGdiFONTOBJ_pvTrueTypeFontFile", 0x1286,2},
|
||||||
|
{L"NtGdiFONTOBJ_cGetAllGlyphHandles", 0x1287,2},
|
||||||
|
{L"NtGdiSTROBJ_bEnum", 0x1288,3},
|
||||||
|
{L"NtGdiSTROBJ_bEnumPositionsOnly", 0x1289,3},
|
||||||
|
{L"NtGdiSTROBJ_bGetAdvanceWidths", 0x128a,4},
|
||||||
|
{L"NtGdiSTROBJ_vEnumStart", 0x128b,1},
|
||||||
|
{L"NtGdiSTROBJ_dwGetCodePage", 0x128c,1},
|
||||||
|
{L"NtGdiPATHOBJ_vGetBounds", 0x128d,2},
|
||||||
|
{L"NtGdiPATHOBJ_bEnum", 0x128e,2},
|
||||||
|
{L"NtGdiPATHOBJ_vEnumStart", 0x128f,1},
|
||||||
|
{L"NtGdiPATHOBJ_vEnumStartClipLines", 0x1290,4},
|
||||||
|
{L"NtGdiPATHOBJ_bEnumClipLines", 0x1291,3},
|
||||||
|
{L"NtGdiGetDhpdev", 0x1292,1},
|
||||||
|
{L"NtGdiEngCheckAbort", 0x1293,1},
|
||||||
|
{L"NtGdiHT_Get8BPPFormatPalette", 0x1294,4},
|
||||||
|
{L"NtGdiHT_Get8BPPMaskPalette", 0x1295,6},
|
||||||
|
{L"NtGdiUpdateTransform", 0x1296,1},
|
||||||
|
{L"NtGdiSetPUMPDOBJ", 0x1297,4},
|
||||||
|
{L"NtGdiBRUSHOBJ_DeleteRbrush", 0x1298,2},
|
||||||
|
{L"NtGdiUMPDEngFreeUserMem", 0x1299,1},
|
||||||
|
{L"NtGdiDrawStream", 0x129a,3},
|
||||||
|
{NULL, 0, 0}
|
||||||
|
};
|
||||||
|
|
|
@ -16,3 +16,6 @@
|
||||||
<directory name="winetests">
|
<directory name="winetests">
|
||||||
<xi:include href="winetests/directory.rbuild" />
|
<xi:include href="winetests/directory.rbuild" />
|
||||||
</directory>
|
</directory>
|
||||||
|
<directory name="apitests">
|
||||||
|
<xi:include href="apitests/directory.rbuild" />
|
||||||
|
</directory>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue