⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ntgdibad.h

📁 这是一个开放源代码的与WINNT/WIN2K/WIN2003兼容的操作系统
💻 H
📖 第 1 页 / 共 2 页
字号:

/* Should be done in user-mode. */
BOOL
STDCALL
NtGdiGetLogColorSpace(HCOLORSPACE  hColorSpace,
                           LPLOGCOLORSPACEW  Buffer,
                           DWORD  Size);

/* Should be done in user-mode using shared GDI Objects. */
INT STDCALL  NtGdiGetMapMode(HDC  hDC);

/* Use NtGdiDoPalette with GdiPalGetEntries. */
UINT
STDCALL
NtGdiGetPaletteEntries (
	HPALETTE	hpal,
	UINT		StartIndex,
	UINT		Entries,
	LPPALETTEENTRY	pe
	);

/* Should be done in user-mode using shared GDI Objects. */
INT
STDCALL
NtGdiGetPixelFormat(HDC  hDC);

/* Should be done in user-mode using shared GDI Objects. */
INT STDCALL  NtGdiGetPolyFillMode(HDC  hDC);

/* Should be done in user-mode using shared GDI Objects. */
INT STDCALL  NtGdiGetROP2(HDC  hDC);

/* Should be done in user-mode using shared GDI Objects. */
INT STDCALL  NtGdiGetStretchBltMode(HDC  hDC);

/* Use NtGdiDoPalette with GdiPalSetSystemEntries. */
UINT
STDCALL
NtGdiGetSystemPaletteEntries (
	HDC		hDC,
	UINT		StartIndex,
	UINT		Entries,
	LPPALETTEENTRY	pe
	);

/* Should be done in user-mode using shared GDI Objects. */
UINT STDCALL  NtGdiGetTextAlign(HDC  hDC);

/* Should be done in user-mode using shared GDI Objects. */
UINT
STDCALL
NtGdiGetTextCharset(HDC  hDC);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
COLORREF STDCALL  NtGdiGetTextColor(HDC  hDC);

/* Use NtGdiGetDCPoint with GdiGetViewPortExt */
BOOL STDCALL  NtGdiGetViewportExtEx(HDC  hDC, LPSIZE viewportExt);

/* Needs to be done in user-mode. */
BOOL STDCALL  NtGdiGetViewportOrgEx(HDC  hDC, LPPOINT viewportOrg);

/* Needs to be done in user-mode. */
BOOL STDCALL  NtGdiGetWindowExtEx(HDC  hDC, LPSIZE windowExt);

/* Needs to be done in user-mode. */
BOOL STDCALL  NtGdiGetWindowOrgEx(HDC  hDC, LPPOINT windowOrg);

/* Use NtGdiGetTransform with GdiWorldSpaceToPageSpace */
BOOL
STDCALL
NtGdiGetWorldTransform (
	HDC	hDC,
	LPXFORM	Xform
	);

/* Needs to be done in user-mode. */
BOOL
STDCALL
NtGdiMoveToEx(HDC  hDC,
                   int  X,
                   int  Y,
                   LPPOINT  Point);

/* Needs to be done in user-mode. */
BOOL
STDCALL
NtGdiOffsetViewportOrgEx (
	HDC	hDC,
	int	XOffset,
	int	YOffset,
	LPPOINT	Point
	);

/* Needs to be done in user-mode. */
BOOL
STDCALL
NtGdiOffsetWindowOrgEx (
	HDC	hDC,
	int	XOffset,
	int	YOffset,
	LPPOINT	Point
	);

/* Use NtGdiFillRgn. Add 0 at the end. */
BOOL
STDCALL
NtGdiPaintRgn(HDC  hDC,
                   HRGN  hRgn);

/* Metafiles are user-mode. */
BOOL
STDCALL
NtGdiPlayEnhMetaFile (
	HDC		hDC,
	HENHMETAFILE	hemf,
	CONST PRECT	Rect
	);

/* Metafiles are user-mode. */
BOOL
STDCALL
NtGdiPlayEnhMetaFileRecord (
	HDC			hDC,
	LPHANDLETABLE		Handletable,
	CONST ENHMETARECORD	* EnhMetaRecord,
	UINT			Handles
	);

/* Use NtGdiPolyPolyDraw with GdiPolyBezier. */
BOOL
STDCALL
NtGdiPolyBezier(HDC  hDC,
                     CONST LPPOINT  pt,
                     DWORD  Count);

/* Use NtGdiPolyPolyDraw with GdiPolyBezierTo. */
BOOL
STDCALL
NtGdiPolyBezierTo(HDC  hDC,
                       CONST LPPOINT  pt,
                       DWORD  Count);

/* Use NtGdiPolyPolyDraw with GdiPolyPolyLine. */
BOOL
STDCALL
NtGdiPolyline(HDC  hDC,
                   CONST LPPOINT  pt,
                   int  Count);

/* Use NtGdiPolyPolyDraw with GdiPolyLineTo. */
BOOL
STDCALL
NtGdiPolylineTo(HDC  hDC,
                     CONST LPPOINT  pt,
                     DWORD  Count);

/* Use NtGdiPolyPolyDraw with GdiPolyPolyLine. */
BOOL
STDCALL
NtGdiPolyPolyline(HDC  hDC,
                       CONST LPPOINT  pt,
                       CONST LPDWORD  PolyPoints,
                       DWORD  Count);

/* Use NtGdiPolyTextOutW with 0 at the end. */
BOOL
STDCALL
NtGdiPolyTextOut(HDC  hDC,
                      CONST LPPOLYTEXTW txt,
                      int  Count);

/* Use NtGdiPolyPolyDraw with GdiPolyPolygon. */
BOOL
STDCALL
NtGdiPolygon(HDC  hDC,
                  CONST PPOINT  Points,
                  int  Count);

/* Use NtGdiPolyPolyDraw with GdiPolyPolygon. */
BOOL
STDCALL
NtGdiPolyPolygon(HDC  hDC,
                      CONST LPPOINT  Points,
                      CONST LPINT  PolyCounts,
                      int  Count);

/* Call UserRealizePalette. */
UINT
STDCALL
NtGdiRealizePalette (
	HDC	hDC
	);

/* Should be done in user-mode. */
BOOL
STDCALL
NtGdiRemoveFontResource(LPCWSTR  FileName);

/* Should be done in user-mode. */
HGDIOBJ STDCALL  NtGdiSelectObject(HDC  hDC, HGDIOBJ  hGDIObj);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
COLORREF STDCALL NtGdiSetBkColor (HDC hDC, COLORREF Color);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
INT STDCALL  NtGdiSetBkMode(HDC  hDC, INT  backgroundMode);

/* Use NtGdiDoPalette with GdiPalSetColorTable, TRUE. */
UINT
STDCALL
NtGdiSetDIBColorTable (
	HDC		hDC,
	UINT		StartIndex,
	UINT		Entries,
	CONST RGBQUAD	* Colors
	);

/* Use SetDIBitsToDevice in gdi32. */
INT
STDCALL
NtGdiSetDIBits (
	HDC			hDC,
	HBITMAP			hBitmap,
	UINT			StartScan,
	UINT			ScanLines,
	CONST VOID		* Bits,
	CONST BITMAPINFO	* bmi,
	UINT			ColorUse
	);

/* Metafiles are user-mode. */
HENHMETAFILE
STDCALL
NtGdiSetEnhMetaFileBits (
	UINT		BufSize,
	CONST PBYTE	Data
	);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
int
STDCALL
NtGdiSetGraphicsMode (
	HDC	hDC,
	int	Mode
	);

/* Should be done in user-mode. */
BOOL
STDCALL
NtGdiSetICMProfile(HDC  hDC,
                        LPWSTR  Filename);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
int
STDCALL
NtGdiSetMapMode (
	HDC	hDC,
	int	MapMode
	);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
DWORD
STDCALL
NtGdiSetMapperFlags(HDC  hDC,
                          DWORD  Flag);


/* Use NtGdiDoPalette with GdiPalSetEntries, TRUE. */
UINT
STDCALL
NtGdiSetPaletteEntries (
	HPALETTE		hpal,
	UINT			Start,
	UINT			Entries,
	CONST LPPALETTEENTRY	pe
	);

/* Use NtGdiSetPixel(hdc, x, y, color) != CLR_INVALID; */
BOOL
STDCALL
NtGdiSetPixelV (
	HDC		hDC,
	INT		X,
	INT		Y,
	COLORREF	Color
	);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
INT STDCALL  NtGdiSetPolyFillMode(HDC  hDC, INT polyFillMode);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
INT STDCALL  NtGdiSetROP2(HDC  hDC, INT  ROPmode);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
INT STDCALL  NtGdiSetStretchBltMode(HDC  hDC, INT  stretchBltMode);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
UINT
STDCALL
NtGdiSetTextAlign(HDC  hDC,
                       UINT  Mode);

/* Needs to be done in user-mode, using shared GDI Object Attributes. */
COLORREF STDCALL  NtGdiSetTextColor(HDC hDC, COLORREF color);

/* Needs to be done in user-mode. */
BOOL
STDCALL
NtGdiSetWindowExtEx (
	HDC	hDC,
	int	XExtent,
	int	YExtent,
	LPSIZE	Size
	);

/* Needs to be done in user-mode. */
BOOL
STDCALL
NtGdiSetViewportOrgEx (
	HDC	hDC,
	int	X,
	int	Y,
	LPPOINT	Point
	);

/* Needs to be done in user-mode. */
BOOL
STDCALL
NtGdiSetViewportExtEx (
	HDC	hDC,
	int	XExtent,
	int	YExtent,
	LPSIZE	Size
	);

/* Needs to be done in user-mode. */
BOOL
STDCALL
NtGdiSetWindowOrgEx (
	HDC	hDC,
	int	X,
	int	Y,
	LPPOINT	Point
	);

/* Use NtGdiStretchDIBitsInternal. */
INT
STDCALL
NtGdiStretchDIBits (
	HDC			hDC,
	INT			XDest,
	INT			YDest,
	INT			DestWidth,
	INT			DestHeight,
	INT			XSrc,
	INT			YSrc,
	INT			SrcWidth,
	INT			SrcHeight,
	CONST VOID		* Bits,
	CONST BITMAPINFO	* BitsInfo,
	UINT			Usage,
	DWORD			ROP
	);

/* Needs to be done in user-mode. */
BOOL
STDCALL
NtGdiUpdateICMRegKey(DWORD  Reserved,  
                          LPWSTR  CMID, 
                          LPWSTR  Filename,
                          UINT  Command);

/* All this Should be in user-mode, not NtUser calls. Especially not in GDI! */
DWORD
NTAPI
NtUserCallTwoParam(
  DWORD Param1,
  DWORD Param2,
  DWORD Routine);

#define TWOPARAM_ROUTINE_SETDCPENCOLOR      0x45
#define TWOPARAM_ROUTINE_SETDCBRUSHCOLOR    0x46
#define TWOPARAM_ROUTINE_GETDCCOLOR         0x47

#define NtUserGetDCBrushColor(hbr) \
  (COLORREF)NtUserCallTwoParam((DWORD)(hbr), OBJ_BRUSH, TWOPARAM_ROUTINE_GETDCCOLOR)

#define NtUserGetDCPenColor(hbr) \
  (COLORREF)NtUserCallTwoParam((DWORD)(hbr), OBJ_PEN, TWOPARAM_ROUTINE_GETDCCOLOR)

#define NtUserSetDCBrushColor(hbr, crColor) \
  (COLORREF)NtUserCallTwoParam((DWORD)(hbr), (DWORD)crColor, TWOPARAM_ROUTINE_SETDCBRUSHCOLOR)

#define NtUserSetDCPenColor(hbr, crColor) \
  (COLORREF)NtUserCallTwoParam((DWORD)(hbr), (DWORD)crColor, TWOPARAM_ROUTINE_SETDCPENCOLOR)

#endif /* WIN32K_NTGDI_BAD_INCLUDED */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -