mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 21:45:41 +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">
|
||||
<xi:include href="winetests/directory.rbuild" />
|
||||
</directory>
|
||||
<directory name="apitests">
|
||||
<xi:include href="apitests/directory.rbuild" />
|
||||
</directory>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue