22#define NONAMELESSSTRUCT
23#define NONAMELESSUNION
49 printf(
"(null) region\n" );
133 ok(
ret == 0,
"GetClipRgn returned %d instead of 0\n",
ret);
135 ok(
ret ==
NULLREGION,
"GetRgnBox returned %d %s instead of NULLREGION\n",
149 trace(
"Windows BUG: IntersectClipRect returned %d instead of SIMPLEREGION\n",
ret);
152 ok(
ret == 1,
"GetClipRgn returned %d instead of 1\n",
ret);
259 if (!pGdiConvertToDevmodeW)
261 win_skip(
"GdiConvertToDevmodeW is not available on this platform\n");
270 dmW = pGdiConvertToDevmodeW(&dmA);
276 dmW = pGdiConvertToDevmodeW(&dmA);
278 "wrong size %u\n", dmW->
dmSize);
283 dmW = pGdiConvertToDevmodeW(&dmA);
285 "wrong size %u\n", dmW->
dmSize);
287 "expected DMICMMETHOD_NONE, got %u\n", dmW->dmICMMethod);
291 dmW = pGdiConvertToDevmodeW(&dmA);
293 "wrong size %u\n", dmW->
dmSize);
298 dmW = pGdiConvertToDevmodeW(&dmA);
299 ok(!dmW,
"GdiConvertToDevmodeW should fail\n");
304 dmW = pGdiConvertToDevmodeW(&dmA);
312 static const int caps[] =
362 for (
i = 0;
i <
sizeof(caps)/
sizeof(caps[0]);
i++)
364 "wrong caps on %s for %u: %u\n",
descr, caps[
i],
369 ok( !
ret,
"GetDeviceGammaRamp succeeded on %s\n",
descr );
379 ok( !
type,
"GetBoundsRect succeeded on %s\n",
descr );
381 ok( !
type,
"SetBoundsRect succeeded on %s\n",
descr );
385 for (
i = 0;
i <
sizeof(caps)/
sizeof(caps[0]);
i++)
403 ok( hdc_caps > 0,
"expected a positive value on %s, got %d\n",
descr, hdc_caps );
405 ok( hdc_caps == 0,
"expected 0 on %s, got %d\n",
descr, hdc_caps );
410 "mismatched caps on %s for %u: %u/%u (scale %d)\n",
descr, caps[
i],
430 "GetBoundsRect returned type %x for %s\n",
type,
descr );
458 "Got DESKTOPHORZRES %d on %s, expected %d\n",
463 "Got DESKTOPVERTRES %d on %s, expected %d\n",
499 info->bmiHeader.biWidth = 16;
500 info->bmiHeader.biHeight = 16;
501 info->bmiHeader.biPlanes = 1;
502 info->bmiHeader.biBitCount = 8;
507 for (
i = 0;
i <
sizeof(caps)/
sizeof(caps[0]);
i++)
509 "mismatched caps on %s and DIB for %u: %u/%u\n",
descr, caps[
i],
514 ok( !
ret,
"GetDeviceGammaRamp succeeded on %s\n",
descr );
543 HDC hdc, hNewDC, hdcMetafile, screen_dc;
551 ok(bRet,
"EnumDisplaySettingsEx failed\n");
564 ok(
hdc !=
NULL,
"CreateCompatibleDC returned %p\n",
hdc);
573 ok(bRet ==
TRUE,
"DeleteDC returned %u\n", bRet);
577 ok(hNewDC ==
NULL,
"CreateCompatibleDC returned %p\n", hNewDC);
581 ok(hdcMetafile != 0,
"CreateEnhMetaFileA failed\n");
583 ok(hNewDC !=
NULL,
"CreateCompatibleDC failed\n");
595 ok(hdcMetafile != 0,
"CreateEnhMetaFileA failed\n");
597 ok(hNewDC ==
NULL,
"CreateCompatibleDC succeeded\n");
620 for(
i = 0;
i < 64;
i++)
bits[
i] =
i & 1 ? 0 : 0xffffff;
627 ok( hdcmem !=
NULL,
"CreateCompatibleDC rets %p\n", hdcmem);
631 ok(ret2 > 0,
"expected ret2 > 0, got %d\n", ret2);
633 ok(
ret == ret2,
"expected ret == %d, got %d\n", ret2,
ret);
635 ok(
ret == ret2,
"expected ret == %d, got %d\n", ret2,
ret);
640 ok(
ret == 0,
"expected ret == 0, got %d\n",
ret);
641 ok(
descr.nSize == 0,
"expected descr.nSize == 0, got %d\n",
descr.nSize);
645 ok(
ret == ret2,
"expected ret == %d, got %d\n", ret2,
ret);
646 ok(
descr.nSize ==
sizeof(
descr),
"expected desc.nSize == sizeof(descr), got %d\n",
descr.nSize);
650 ok(
ret == 0,
"expected ret == 0, got %d\n",
ret);
651 ok(
descr.nSize == 0,
"expected descr.nSize == 0, got %d\n",
descr.nSize);
657 ok( oldhbmp !=
NULL,
"SelectObject returned NULL\n" );
659 ok( col == 0xffffff,
"GetPixel returned %08x, expected 00ffffff\n", col);
661 ok( col == 0x000000,
"GetPixel returned %08x, expected 00000000\n", col);
663 ok( col ==
CLR_INVALID,
"GetPixel returned %08x, expected ffffffff\n", col);
672 ok( !oldhbmp,
"SelectObject of a bitmap with 2 bits/pixel should return NULL\n");
680 if( bitspixel == 16) {
681 ok( oldhbmp !=
NULL,
"SelectObject returned NULL\n" );
684 "GetPixel of a bitmap with 16 bits/pixel returned %08x, expected 00ffffff\n", col);
687 "GetPixel of a bitmap with 16 bits/pixel returned returned %08x, expected 00000000\n", col);
696 if( bitspixel == 32) {
697 ok( oldhbmp !=
NULL,
"SelectObject returned NULL\n" );
700 "GetPixel of a bitmap with 32 bits/pixel returned %08x, expected 00ffffff\n", col);
703 "GetPixel of a bitmap with 32 bits/pixel returned returned %08x, expected 00000000\n", col);
720 ok(
hwnd != 0,
"CreateWindowExA failed\n");
723 ok(
hdc != 0,
"GetDC failed\n");
727 ok(
ret,
"DeleteDC failed\n");
729 ok(!
ret ||
broken(
ret) ,
"GetObjectType should fail for a deleted DC\n");
732 ok(
hdc != 0,
"GetDC failed\n");
736 ok(
ret,
"DeleteDC failed\n");
738 ok(!
ret ||
broken(
ret) ,
"GetObjectType should fail for a deleted DC\n");
744 ok(
hwnd != 0,
"GetDesktopWindow failed\n");
747 ok(
hdc != 0,
"GetDC failed\n");
751 ok(
ret,
"DeleteDC failed\n");
753 ok(!
ret ||
broken(
ret) ,
"GetObjectType should fail for a deleted DC\n");
756 ok(
hdc != 0,
"GetDC failed\n");
760 ok(
ret,
"DeleteDC failed\n");
762 ok(!
ret ||
broken(
ret) ,
"GetObjectType should fail for a deleted DC\n");
765 memset(&cls, 0,
sizeof(cls));
772 ok(
ret,
"RegisterClassExA failed\n");
776 ok(
hwnd != 0,
"CreateWindowExA failed\n");
779 ok(
hdc != 0,
"GetDC failed\n");
783 ok(
ret,
"DeleteDC failed\n");
787 ok(
ret,
"ReleaseDC failed\n");
794 ok(
hdc != 0,
"GetDC failed\n");
798 ok(
ret,
"DeleteDC failed\n");
800 ok(!
ret ||
broken(
ret) ,
"GetObjectType should fail for a deleted DC\n");
808 ok(
ret,
"UnregisterClassA failed\n");
811 ok(!
ret,
"GetObjectType should fail for a deleted DC\n");
814 memset(&cls, 0,
sizeof(cls));
821 ok(
ret,
"RegisterClassExA failed\n");
825 ok(
hwnd != 0,
"CreateWindowExA failed\n");
828 ok(
hdc != 0,
"GetDC failed\n");
832 ok(
ret,
"DeleteDC failed\n");
836 ok(
ret,
"ReleaseDC failed\n");
841 ok(
hdc != 0,
"GetDC failed\n");
845 ok(
ret,
"DeleteDC failed\n");
847 ok(!
ret ||
broken(
ret) ,
"GetObjectType should fail for a deleted DC\n");
852 ok(
ret,
"UnregisterClassA failed\n");
866 ok(
hdc !=
NULL,
"CreateCompatibleDC failed\n");
871 ok(
ret == 0,
"Expected GetBoundsRect to return 0, got %u\n",
ret);
874 ok(
ret == 0,
"Expected GetBoundsRect to return 0, got %u\n",
ret);
877 SetRect(&set_rect, 10, 20, 40, 50);
880 "Expected return flag DCB_RESET to be set, got %u\n",
ret);
884 "Expected GetBoundsRect to return 0, got %u\n",
ret);
888 "Expected GetBoundsRect to return DCB_RESET, got %u\n",
ret);
894 ok(
ret == 0,
"Expected GetBoundsRect to return 0, got %u\n",
ret);
897 ok(
ret == 0,
"Expected GetBoundsRect to return 0, got %u\n",
ret);
900 ok(
ret == 0,
"Expected SetBoundsRect to return 0, got %u\n",
ret);
903 ok(
ret == 0,
"Expected SetBoundsRect to return 0, got %u\n",
ret);
905 SetRect(&set_rect, 10, 20, 40, 50);
927 SetRect(&set_rect, 10, 20, 40, 50);
950 SetRect(&set_rect, 50, 25, 30, 35);
971 "GetBoundsRect returned %x\n",
ret);
1050 info->bmiHeader.biWidth = 256;
1051 info->bmiHeader.biHeight = 256;
1052 info->bmiHeader.biPlanes = 1;
1053 info->bmiHeader.biBitCount = 8;
1056 ok(
dib != 0,
"failed to create DIB\n" );
1080 for (
i = 0;
i < 1000;
i++)
1086 UINT endcap = endcaps[(
i / 3) % 3];
1130 int bitspixel, colorres;
1133 ok(bitspixel != 0,
"Expected to get valid BITSPIXEL capability value\n");
1138 "Expected to get valid COLORRES capability value\n");
1146 "Expected COLORRES to be 18, got %d\n", colorres);
1150 "Expected COLORRES to be 16, got %d\n", colorres);
1155 "Expected COLORRES to be 24, got %d\n", bitspixel);
1158 ok(0,
"Got unknown BITSPIXEL %d with COLORRES %d\n", bitspixel, colorres);
1170 WORD oldramp[3][256],
ramp[3][256];
1176 win_skip(
"GetDeviceGammaRamp failed, skipping tests\n");
1184 win_skip(
"SetDeviceGammaRamp failed, skipping tests\n");
1193 ok(!
ret,
"SetDeviceGammaRamp succeeded\n");
1196 for (
i = 0;
i < 256;
i++)
ramp[0][
i] =
i;
1201 for (
i = 0;
i < 256;
i++)
ramp[0][
i] =
i * 256;
1203 ok(
ret,
"SetDeviceGammaRamp failed\n");
1207 ramp[0][1] = 0x7FFF;
1208 for (
i = 2;
i < 256;
i++)
ramp[0][
i] = 0xFFFF;
1210 ok(!
ret,
"SetDeviceGammaRamp succeeded\n");
1214 for (
i = 1;
i < 256;
i++)
ramp[0][
i] =
ramp[0][
i - 1] + 512;
1216 ok(
ret,
"SetDeviceGammaRamp failed\n");
1218 for (
i = 2;
i < 256;
i+=2)
1224 ok(
ret,
"SetDeviceGammaRamp failed\n");
1228 ok(
ret,
"SetDeviceGammaRamp failed\n");
1239 return strcmp(tech,
"PostScript") == 0;
1259 pGetDefaultPrinterA = (
void *)
GetProcAddress( winspool,
"GetDefaultPrinterA" );
1260 pOpenPrinterA = (
void *)
GetProcAddress( winspool,
"OpenPrinterA" );
1261 pGetPrinterA = (
void *)
GetProcAddress( winspool,
"GetPrinterA" );
1262 pGetPrinterDriverA = (
void *)
GetProcAddress( winspool,
"GetPrinterDriverA" );
1263 pClosePrinter = (
void *)
GetProcAddress( winspool,
"ClosePrinter" );
1265 if (!pGetDefaultPrinterA || !pOpenPrinterA || !pGetPrinterA || !pGetPrinterDriverA || !pClosePrinter)
1269 if (!pGetDefaultPrinterA(
buffer, &
len ))
goto done;
1270 if (!pOpenPrinterA(
buffer, &hprn,
NULL ))
goto done;
1272 pGetPrinterA( hprn, 2,
NULL, 0, &
len );
1276 pGetPrinterDriverA( hprn,
NULL, 3,
NULL, 0, &
len );
1278 if (!pGetPrinterDriverA( hprn,
NULL, 3, (
LPBYTE)dbuf,
len, &
len ))
goto done;
1284 trace(
"hdc %p for driver '%s' printer '%s' port '%s' is %sPostScript\n",
hdc,
1292 if (hprn) pClosePrinter( hprn );
1294 if (!
hdc)
skip(
"could not create a DC for the default printer\n" );
1300 HDC memdc, display_memdc, enhmf_dc;
1308 if (!
hdc || !hdc_200)
return;
1320 ok( memdc !=
NULL,
"CreateCompatibleDC failed for printer\n" );
1321 ok( display_memdc !=
NULL,
"CreateCompatibleDC failed for screen\n" );
1334 ok( orig !=
NULL,
"SelectObject failed\n" );
1345 ok( orig !=
NULL,
"SelectObject failed\n" );
1347 ok(
BitBlt(
hdc, 10, 10, 20, 20, display_memdc, 0, 0,
SRCCOPY ),
"BitBlt failed\n" );
1348 ok(
BitBlt( memdc, 10, 10, 20, 20, display_memdc, 0, 0,
SRCCOPY ),
"BitBlt failed\n" );
1349 ok(
BitBlt( display_memdc, 10, 10, 20, 20, memdc, 0, 0,
SRCCOPY ),
"BitBlt failed\n" );
1355 ok(enhmf_dc != 0,
"CreateEnhMetaFileA failed\n");
1360 ok(enhmf_dc != 0,
"CreateEnhMetaFileA failed\n");
1372 static const char psadobe[10] =
"%!PS-Adobe";
1388 ok(
ret > 0,
"StartDoc failed: %d\n",
ret);
1390 strcpy(
buf + 2,
"\n% ===> before DOWNLOADHEADER <===\n");
1397 ok(
ret == 1,
"DOWNLOADHEADER failed\n");
1398 ok(
strcmp(
buf,
"deadbeef") != 0,
"DOWNLOADHEADER failed\n");
1400 strcpy(
buf + 2,
"\n% ===> after DOWNLOADHEADER <===\n");
1406 ok(
ret == 1,
"EndDoc failed\n");
1412 ok(
ret,
"ReadFile failed\n");
1416 buf[
sizeof(
buf) - 1] = 0;
1420 if (!(
p[0] == 0x1b &&
p[1] ==
'%') &&
memcmp(
p,
"@PJL", 4) != 0)
1426 while (*
p ==
'\r' || *
p ==
'\n')
p++;
1428 ok(
p && !
memcmp(
p, psadobe,
sizeof(psadobe)),
"wrong signature: %.14s\n",
p ?
p :
buf);
1445 skip(
"Default printer is not a PostScript device\n");
1452 ok(!
ret,
"GETFACENAME is supported\n");
1456 ok(
ret == 1,
"DOWNLOADFACE is not supported\n");
1460 ok(
ret == 1,
"OPENCHANNEL is not supported\n");
1464 ok(
ret == 1,
"DOWNLOADHEADER is not supported\n");
1468 ok(
ret == 1,
"CLOSECHANNEL is not supported\n");
1472 ok(
ret == 1,
"POSTSCRIPT_PASSTHROUGH is not supported\n");
1475 ok(
ret == 1,
"GETFACENAME failed\n");
static POBJECT_TYPE GetObjectType(IN PCWSTR TypeName)
int strcmp(const char *String1, const char *String2)
int memcmp(void *Buffer1, void *Buffer2, ACPI_SIZE Count)
ACPI_SIZE strlen(const char *String)
char * strcpy(char *DstString, const char *SrcString)
char * strchr(const char *String, int ch)
static const char * wine_dbgstr_rect(const RECT *prc)
DWORD GetPixel(LPDIRECTDRAWSURFACE7 Surface, UINT x, UINT y)
#define ERROR_INVALID_PARAMETER
#define ReadFile(a, b, c, d, e)
#define GetProcAddress(x, y)
#define INVALID_HANDLE_VALUE
#define CreateFileA(a, b, c, d, e, f, g)
#define HeapFree(x, y, z)
int inflate(z_streamp strm, int flush)
BOOL WINAPI DeleteFileA(IN LPCSTR lpFileName)
HMODULE WINAPI DECLSPEC_HOTPATCH GetModuleHandleA(LPCSTR lpModuleName)
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryA(LPCSTR lpLibFileName)
DWORD WINAPI GetTempPathA(IN DWORD nBufferLength, OUT LPSTR lpBuffer)
static VOID BitBlt(_In_ ULONG Left, _In_ ULONG Top, _In_ ULONG Width, _In_ ULONG Height, _In_reads_bytes_(Delta *Height) PUCHAR Buffer, _In_ ULONG BitsPerPixel, _In_ ULONG Delta)
UINT WINAPI GetTempFileNameA(IN LPCSTR lpPathName, IN LPCSTR lpPrefixString, IN UINT uUnique, OUT LPSTR lpTempFileName)
STRING Escape(const STRING &str)
GLuint GLuint GLsizei GLenum type
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLint GLint GLsizei width
GLenum GLenum GLenum GLenum GLenum scale
GLenum GLuint GLenum GLsizei const GLchar * buf
GLenum GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * bits
GLenum GLint GLint * precision
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define memcpy(s1, s2, n)
static void test_CreateCompatibleDC(void)
static void test_desktop_colorres(void)
static void test_dc_values(void)
static void test_pscript_printer_dc(void)
static HDC create_printer_dc(int scale, BOOL reset)
static void test_boundsrect(void)
static BOOL is_postscript_printer(HDC hdc)
static void test_DeleteDC(void)
static void print_something(HDC hdc)
static void dump_region(HRGN hrgn)
static void test_printer_dc(void)
static void test_device_caps(HDC hdc, HDC ref_dc, const char *descr, int scale)
static void test_savedc(void)
static void test_savedc_2(void)
static void test_GdiConvertToDevmodeW(void)
static void test_gamma(void)
static void test_DC_bitmap(void)
static const BYTE ramp[17]
#define todo_wine_if(is_todo)
#define FIELD_OFFSET(t, f)
HBITMAP WINAPI CreateDIBSection(HDC hDC, CONST BITMAPINFO *BitmapInfo, UINT Usage, VOID **Bits, HANDLE hSection, DWORD dwOffset)
BOOL WINAPI EnumDisplaySettingsA(LPCSTR lpszDeviceName, DWORD iModeNum, LPDEVMODEA lpDevMode)
DWORD WINAPI GetLastError(void)
BOOL WINAPI DeleteMetaFile(_In_ HMETAFILE)
int WINAPI SetMapMode(_In_ HDC, _In_ int)
int WINAPI GetTextCharacterExtra(_In_ HDC)
HGDIOBJ WINAPI GetStockObject(_In_ int)
HBITMAP WINAPI CreateBitmap(_In_ INT cx, _In_ INT cy, _In_ UINT cPlanes, _In_ UINT cBitsPerPel, _In_opt_ const VOID *pvBits)
BOOL WINAPI DeleteEnhMetaFile(_In_opt_ HENHMETAFILE)
int WINAPI GetClipBox(_In_ HDC, _Out_ LPRECT)
int WINAPI GetDeviceCaps(_In_opt_ HDC, _In_ int)
COLORREF WINAPI SetBkColor(_In_ HDC, _In_ COLORREF)
HRGN WINAPI CreateRectRgn(_In_ int, _In_ int, _In_ int, _In_ int)
HPEN WINAPI ExtCreatePen(_In_ DWORD iPenStyle, _In_ DWORD cWidth, _In_ const LOGBRUSH *plbrush, _In_ DWORD cStyle, _In_reads_opt_(cStyle) const DWORD *pstyle)
HDC WINAPI CreateMetaFileA(_In_opt_ LPCSTR)
COLORREF WINAPI GetTextColor(_In_ HDC)
BOOL WINAPI SetViewportExtEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPSIZE)
HDC WINAPI ResetDCA(_In_ HDC, _In_ const DEVMODEA *)
int WINAPI IntersectClipRect(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int)
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
BOOL WINAPI MoveToEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
HDC WINAPI CreateDCA(_In_opt_ LPCSTR pszDriver, _In_opt_ LPCSTR pszDevice, _In_opt_ LPCSTR pszOutput, _In_opt_ const DEVMODEA *pdmInit)
BOOL WINAPI SetViewportOrgEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)
int WINAPI EndDoc(_In_ HDC)
int WINAPI GetClipRgn(_In_ HDC, _In_ HRGN)
int WINAPI SetTextCharacterExtra(_In_ HDC, _In_ int)
HMETAFILE WINAPI CloseMetaFile(_In_ HDC hdc)
int WINAPI StartDocA(_In_ HDC, _In_ const DOCINFOA *)
BOOL WINAPI RestoreDC(_In_ HDC, _In_ int)
COLORREF WINAPI GetBkColor(_In_ HDC)
int WINAPI DescribePixelFormat(_In_ HDC hdc, _In_ int iPixelFormat, _In_ UINT nBytes, _Out_writes_bytes_opt_(nBytes) LPPIXELFORMATDESCRIPTOR ppfd)
HDC WINAPI CreateEnhMetaFileA(_In_opt_ HDC, _In_opt_ LPCSTR, _In_opt_ LPCRECT, _In_opt_ LPCSTR)
#define POSTSCRIPT_PASSTHROUGH
HENHMETAFILE WINAPI CloseEnhMetaFile(_In_ HDC hdc)
HBITMAP WINAPI CreateCompatibleBitmap(_In_ HDC hdc, _In_ INT cx, _In_ INT cy)
BOOL WINAPI Rectangle(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int)
BOOL WINAPI GetDeviceGammaRamp(_In_ HDC hdc, _Out_writes_bytes_(3 *256 *2) LPVOID lpRamp)
DWORD WINAPI GetRegionData(_In_ HRGN hrgn, _In_ DWORD nCount, _Out_writes_bytes_to_opt_(nCount, return) LPRGNDATA lpRgnData)
BOOL WINAPI SetDeviceGammaRamp(_In_ HDC hdc, _In_reads_bytes_(3 *256 *2) LPVOID lpRamp)
COLORREF WINAPI SetTextColor(_In_ HDC, _In_ COLORREF)
BOOL WINAPI DeleteDC(_In_ HDC)
UINT WINAPI SetBoundsRect(_In_ HDC, _In_opt_ LPCRECT, _In_ UINT)
int WINAPI ExtEscape(_In_ HDC hdc, _In_ int iEscape, _In_ int cjInput, _In_reads_bytes_opt_(cjInput) LPCSTR lpInData, _In_ int cjOutput, _Out_writes_bytes_opt_(cjOutput) LPSTR lpOutData)
BOOL WINAPI LineTo(_In_ HDC, _In_ int, _In_ int)
int WINAPI SaveDC(_In_ HDC)
int WINAPI GetRgnBox(_In_ HRGN, _Out_ LPRECT)
UINT WINAPI GetBoundsRect(_In_ HDC, _Out_ LPRECT, _In_ UINT)
struct _PRINTER_DEFAULTSA * LPPRINTER_DEFAULTSA
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
#define SM_CYVIRTUALSCREEN
HDC WINAPI GetWindowDC(_In_opt_ HWND)
HWND WINAPI CreateWindowExA(_In_ DWORD dwExStyle, _In_opt_ LPCSTR lpClassName, _In_opt_ LPCSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
BOOL WINAPI UnregisterClassA(_In_ LPCSTR, HINSTANCE)
LRESULT WINAPI DefWindowProcA(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
HWND WINAPI GetDesktopWindow(void)
#define SM_CXVIRTUALSCREEN
#define ENUM_CURRENT_SETTINGS
ATOM WINAPI RegisterClassExA(_In_ CONST WNDCLASSEXA *)
BOOL WINAPI UpdateWindow(_In_ HWND)
HDC WINAPI GetDC(_In_opt_ HWND)
BOOL WINAPI SetRectEmpty(_Out_ LPRECT)
#define SM_XVIRTUALSCREEN
BOOL WINAPI InflateRect(_Inout_ LPRECT, _In_ int, _In_ int)
BOOL WINAPI DestroyWindow(_In_ HWND)
BOOL WINAPI EqualRect(_In_ LPCRECT, _In_ LPCRECT)
int WINAPI GetSystemMetrics(_In_ int)
#define SM_YVIRTUALSCREEN
BOOL WINAPI SetRect(_Out_ LPRECT, _In_ int, _In_ int, _In_ int, _In_ int)