ReactOS 0.4.17-dev-806-gffa4164
stubs.c
Go to the documentation of this file.
1/*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS user32.dll
4 * FILE: win32ss/user/user32/misc/stubs.c
5 * PURPOSE: User32.dll stubs
6 * PROGRAMMER: Casper S. Hornstrup (chorns@users.sourceforge.net)
7 * NOTES: If you implement a function, remove it from this file
8 * UPDATE HISTORY:
9 * 08-F05-2001 CSH Created
10 */
11
12#include <user32.h>
13
15
16/*
17 * @unimplemented
18 */
23 DWORD dwMilliseconds)
24{
25// Need to call NtQueryInformationProcess and send ProcessId not hProcess.
26 return NtUserWaitForInputIdle(hProcess, dwMilliseconds, FALSE);
27}
28
29/******************************************************************************
30 * SetDebugErrorLevel [USER32.@]
31 * Sets the minimum error level for generating debugging events
32 *
33 * PARAMS
34 * dwLevel [I] Debugging error level
35 *
36 * @unimplemented
37 */
38VOID
41{
42 FIXME("(%lu): stub\n", dwLevel);
43}
44
45
46/*
47 * @implemented
48 */
52{
54
55 return pci->dwCompatFlags;
56}
57
58/*
59 * @implemented
60 */
64{
66
67 return pci->dwCompatFlags2;
68}
69
70/*
71 * @unimplemented
72 */
73VOID
76{
78}
79
80/*
81 * @unimplemented
82 */
83VOID
86{
88}
89
90/*
91 * @unimplemented
92 */
93VOID
96{
98}
99
100
101/*
102 * @implemented
103 */
104UINT
105WINAPI
107{
109}
110
111
112/*************************************************************************
113 * SetSysColorsTemp (USER32.@) (Wine 10/22/2008)
114 *
115 * UNDOCUMENTED !!
116 *
117 * Called by W98SE desk.cpl Control Panel Applet:
118 * handle = SetSysColorsTemp(ptr, ptr, nCount); ("set" call)
119 * result = SetSysColorsTemp(NULL, NULL, handle); ("restore" call)
120 *
121 * pPens is an array of COLORREF values, which seems to be used
122 * to indicate the color values to create new pens with.
123 *
124 * pBrushes is an array of solid brush handles (returned by a previous
125 * CreateSolidBrush), which seems to contain the brush handles to set
126 * for the system colors.
127 *
128 * n seems to be used for
129 * a) indicating the number of entries to operate on (length of pPens,
130 * pBrushes)
131 * b) passing the handle that points to the previously used color settings.
132 * I couldn't figure out in hell what kind of handle this is on
133 * Windows. I just use a heap handle instead. Shouldn't matter anyway.
134 *
135 * RETURNS
136 * heap handle of our own copy of the current syscolors in case of
137 * "set" call, i.e. pPens, pBrushes != NULL.
138 * TRUE (unconditionally !) in case of "restore" call,
139 * i.e. pPens, pBrushes == NULL.
140 * FALSE in case of either pPens != NULL and pBrushes == NULL
141 * or pPens == NULL and pBrushes != NULL.
142 *
143 * I'm not sure whether this implementation is 100% correct. [AM]
144 */
145
146static HPEN SysColorPens[COLOR_MENUBAR + 1];
147static HBRUSH SysColorBrushes[COLOR_MENUBAR + 1];
148
150WINAPI
152 const HBRUSH *pBrushes,
153 DWORD_PTR n)
154{
155 DWORD i;
156
157 if (pPens && pBrushes) /* "set" call */
158 {
159 /* allocate our structure to remember old colors */
160 LPVOID pOldCol = HeapAlloc(GetProcessHeap(), 0, sizeof(DWORD)+n*sizeof(HPEN)+n*sizeof(HBRUSH));
161 LPVOID p = pOldCol;
162 *(DWORD_PTR *)p = n; p = (char*)p + sizeof(DWORD);
163 memcpy(p, SysColorPens, n*sizeof(HPEN)); p = (char*)p + n*sizeof(HPEN);
164 memcpy(p, SysColorBrushes, n*sizeof(HBRUSH)); p = (char*)p + n*sizeof(HBRUSH);
165
166 for (i=0; i < n; i++)
167 {
168 SysColorPens[i] = CreatePen( PS_SOLID, 1, pPens[i] );
169 SysColorBrushes[i] = pBrushes[i];
170 }
171
172 return (DWORD_PTR) pOldCol;
173 }
174 if (!pPens && !pBrushes) /* "restore" call */
175 {
176 LPVOID pOldCol = (LPVOID)n;
177 LPVOID p = pOldCol;
178 DWORD nCount = *(DWORD *)p;
179 p = (char*)p + sizeof(DWORD);
180
181 for (i=0; i < nCount; i++)
182 {
184 SysColorPens[i] = *(HPEN *)p; p = (char*)p + sizeof(HPEN);
185 }
186 for (i=0; i < nCount; i++)
187 {
188 SysColorBrushes[i] = *(HBRUSH *)p; p = (char*)p + sizeof(HBRUSH);
189 }
190 /* get rid of storage structure */
191 HeapFree(GetProcessHeap(), 0, pOldCol);
192
193 return TRUE;
194 }
195 return FALSE;
196}
197
198/*
199 * @unimplemented
200 */
201HDESK
202WINAPI
204{
206 return FALSE;
207}
208
209/*
210 * @unimplemented
211 */
212BOOL
213WINAPI
215{
217 return FALSE;
218}
219
220/*
221 * @unimplemented
222 */
223LONG
224WINAPI
227 LPDWORD lpdwRecipients,
228 UINT uiMessage,
231 PBSMINFO pBSMInfo)
232{
234 return FALSE;
235}
236
237/*
238 * @implemented
239 */
240UINT
241WINAPI
243 _In_opt_ HANDLE hDevice,
244 _In_ UINT uiCommand,
246 _Inout_ PUINT pcbSize)
247{
248 UINT Ret;
249 LPVOID pDataW = pData;
250 UINT cbSize = *pcbSize;
251
252 if (uiCommand == RIDI_DEVICENAME && pData)
253 {
254 pDataW = HeapAlloc(GetProcessHeap(), 0, cbSize * sizeof(WCHAR));
255 if (!pDataW)
256 {
258 return (UINT)-1;
259 }
260 }
261
262 Ret = NtUserGetRawInputDeviceInfo(hDevice, uiCommand, pDataW, &cbSize);
263 if (Ret >= 0 && uiCommand == RIDI_DEVICENAME && pDataW)
264 {
265 if (WideCharToMultiByte(CP_THREAD_ACP, 0, pDataW, cbSize, pData, *pcbSize, NULL, NULL) == 0)
266 Ret = (UINT)-1;
267 }
268 if (pData != pDataW)
269 HeapFree(GetProcessHeap(), 0, pDataW);
270 *pcbSize = cbSize;
271 return Ret;
272}
273
274/*
275 * @unimplemented
276 */
277BOOL
278WINAPI
280{
282 return FALSE;
283}
284
285/*
286 * @implemented
287 */
289WINAPI
291 PRAWINPUT* paRawInput,
292 INT nInput,
293 UINT cbSizeHeader)
294{
295 if (cbSizeHeader == sizeof(RAWINPUTHEADER))
296 return S_OK;
297 return 1;
298}
299
300/*
301 * @implemented
302 */
303UINT
304WINAPI
307 _In_opt_ PRAWINPUT pData,
308 _Inout_ PUINT pcbSize,
309 _In_ UINT cbSizeHeader)
310{
311 PCLIENTTHREADINFO pcti = GetWin32ClientInfo()->pClientThreadInfo;
312
313 if (!pcbSize || cbSizeHeader != sizeof(RAWINPUTHEADER))
314 {
316 return (UINT)-1;
317 }
318
319 if (!pcti || !(pcti->fsWakeBits & QS_RAWINPUT))
320 {
321 *pcbSize = 0;
322 return 0;
323 }
324
325 return NtUserGetRawInputBuffer(pData, pcbSize, cbSizeHeader);
326}
327
328/*
329 * @unimplemented
330 */
332{
334 return FALSE;
335}
336
337/*
338 * @unimplemented
339 */
341{
343 return FALSE;
344}
345
346/*
347 * @unimplemented
348 */
350{
352 return FALSE;
353}
354
355/*
356 * @unimplemented
357 */
359{
361 return FALSE;
362}
363
364/*
365 * @unimplemented
366 */
368{
370 return FALSE;
371}
372
373/*
374 * @unimplemented
375 */
377{
379}
380
381/*
382 * @unimplemented
383 */
385{
387 return FALSE;
388}
389
390/*
391 * @unimplemented
392 */
394{
396}
397
398/*
399 * @unimplemented
400 */
402{
404}
405
406/*
407 * @implemented
408 */
410{
411 return NtUserGetMenuIndex(hMenu, hSubMenu);
412}
413
414/*
415 * @unimplemented
416 */
418{
420 return 0;
421}
422
423BOOL
424WINAPI
426{
428 return FALSE;
429}
430
431VOID
432WINAPI
434{
435 /* Thread call for remote processes (non-CSRSS) only */
437 ExitThread(0);
438}
439
440BOOL
441WINAPI
443{
445 return FALSE;
446}
447
449WINAPI
451{
452 USER_API_MESSAGE ApiMessage;
453 PUSER_DEVICE_EVENT_MSG pusem = &ApiMessage.Data.DeviceEventMsg;
454
455 pusem->hwnd = hwnd;
456 pusem->wParam = wParam;
457 pusem->lParam = lParam;
458 pusem->Data = Data;
459 pusem->Result = 0;
460
461 TRACE("DeviceEventWorker : hwnd %p, wParam %d, lParam %d, Data %d, uResult %p\n", hwnd, wParam, lParam, Data, uResult);
462
463 if ( lParam == 0 )
464 {
466 NULL,
468 sizeof(*pusem) );
469 }
470 else
471 {
472 PCSR_CAPTURE_BUFFER pcsrcb = NULL;
474 ULONG BufferSize = pdev_br->dbch_size;
475
477
478 if ( !pcsrcb )
479 {
480 return STATUS_NO_MEMORY;
481 }
482
484
486 pcsrcb,
488 sizeof(*pusem) );
489
490 CsrFreeCaptureBuffer( pcsrcb );
491 }
492
493 if (NT_SUCCESS(ApiMessage.Status))
494 {
495 *uResult = pusem->Result;
496 }
497
498 return ApiMessage.Status;
499}
500
501BOOL
502WINAPI
504{
506 return FALSE;
507}
508
509BOOL
510WINAPI
512{
513 /*
514 * Determines whether the Shutdown Event Tracker is enabled.
515 *
516 * See http://undoc.airesoft.co.uk/user32.dll/IsSETEnabled.php
517 * for more information.
518 */
520 return FALSE;
521}
522
523BOOL
524WINAPI
526{
528 return FALSE;
529}
530
531BOOL
532WINAPI
534 DWORD dw1,
535 DWORD dw2,
536 DWORD dw3,
537 DWORD dw4,
538 DWORD dw5,
539 DWORD dw6,
540 DWORD dw7,
541 DWORD dw8,
542 DWORD dw9,
543 DWORD dw10,
544 DWORD dw11,
545 DWORD dw12)
546{
548 return FALSE;
549}
550
551BOOL
552WINAPI
554{
556 return FALSE;
557}
558
static HDC hDC
Definition: 3dtext.c:33
#define DECLSPEC_HOTPATCH
Definition: _mingw.h:240
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
Definition: precomp.h:23
LONG NTSTATUS
Definition: precomp.h:26
#define FIXME(fmt,...)
Definition: precomp.h:53
#define UNIMPLEMENTED
Definition: ntoskrnl.c:15
RECT rect
Definition: combotst.c:67
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
#define CSR_CREATE_API_NUMBER(ServerId, ApiId)
Definition: csrmsg.h:37
#define STATUS_NO_MEMORY
Definition: d3dkmdt.h:51
struct _DEV_BROADCAST_HDR * PDEV_BROADCAST_HDR
#define ERROR_NOT_ENOUGH_MEMORY
Definition: dderror.h:7
_In_ ULONG BufferSize
Definition: dispmprt.h:490
#define NULL
Definition: types.h:112
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:33
static WCHAR unknown[MAX_STRING_RESOURCE_LEN]
Definition: object.c:1674
#define GetProcessHeap()
Definition: compat.h:736
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
int(* FARPROC)()
Definition: compat.h:36
#define SetLastError(x)
Definition: compat.h:752
#define HeapAlloc
Definition: compat.h:733
#define HeapFree(x, y, z)
Definition: compat.h:735
#define WideCharToMultiByte
Definition: compat.h:111
VOID WINAPI ExitThread(IN DWORD uExitCode)
Definition: thread.c:365
r reserved
Definition: btrfs.c:3006
unsigned short WORD
Definition: ntddk_ex.h:93
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
pKey DeleteObject()
GLdouble n
Definition: glext.h:7729
const GLubyte * c
Definition: glext.h:8905
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLbitfield flags
Definition: glext.h:7161
GLfloat GLfloat p
Definition: glext.h:8902
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
Definition: glfuncs.h:248
unsigned int UINT
Definition: sysinfo.c:13
DWORD NTAPI NtUserGetRawInputBuffer(PRAWINPUT pData, PUINT pcbSize, UINT cbSizeHeader)
Definition: ntstubs.c:381
UINT NTAPI NtUserGetMenuIndex(HMENU hMenu, HMENU hSubMenu)
Definition: menu.c:6088
DWORD NTAPI NtUserGetRawInputDeviceInfo(HANDLE hDevice, UINT uiCommand, LPVOID pData, PUINT pcbSize)
#define GetWin32ClientInfo()
Definition: ntuser.h:356
DWORD NTAPI NtUserWaitForInputIdle(IN HANDLE hProcess, IN DWORD dwMilliseconds, IN BOOL bSharedWow)
Definition: message.c:3103
#define S_OK
Definition: intsafe.h:52
#define d
Definition: ke_i.h:81
#define Unused(x)
Definition: atlwin.h:28
_In_ BOOL _In_ HANDLE hProcess
Definition: mapping.h:71
LONG_PTR LPARAM
Definition: minwindef.h:175
LONG_PTR LRESULT
Definition: minwindef.h:176
UINT_PTR WPARAM
Definition: minwindef.h:174
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
static _In_ DWORD dwflags
Definition: dispmode.c:64
static HDC
Definition: imagelist.c:88
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:60
unsigned int * PUINT
Definition: ndis.h:50
#define _Inout_
Definition: no_sal2.h:162
#define _Inout_opt_
Definition: no_sal2.h:216
#define _In_
Definition: no_sal2.h:158
#define _In_opt_
Definition: no_sal2.h:212
#define LPVOID
Definition: nt_native.h:45
EXTINLINE VOID NtUserxCreateSystemThreads(BOOL bRemoteProcess)
Definition: ntwrapper.h:646
EXTINLINE UINT NtUserxRealizePalette(HDC hDC)
Definition: ntwrapper.h:641
short WCHAR
Definition: pedump.c:58
long LONG
Definition: pedump.c:60
PCSR_CAPTURE_BUFFER NTAPI CsrAllocateCaptureBuffer(_In_ ULONG ArgumentCount, _In_ ULONG BufferSize)
Definition: capture.c:87
VOID NTAPI CsrFreeCaptureBuffer(_In_ _Frees_ptr_ PCSR_CAPTURE_BUFFER CaptureBuffer)
Definition: capture.c:210
VOID NTAPI CsrCaptureMessageBuffer(_Inout_ PCSR_CAPTURE_BUFFER CaptureBuffer, _In_opt_ PVOID MessageBuffer, _In_ ULONG MessageLength, _Out_ PVOID *CapturedData)
Definition: capture.c:189
NTSTATUS NTAPI CsrClientCallServer(_Inout_ PCSR_API_MESSAGE ApiMessage, _Inout_opt_ PCSR_CAPTURE_BUFFER CaptureBuffer, _In_ CSR_API_NUMBER ApiNumber, _In_ ULONG DataLength)
Definition: connect.c:366
#define TRACE(s)
Definition: solgame.cpp:4
DWORD dwCompatFlags2
Definition: ntuser.h:327
DWORD dwCompatFlags
Definition: ntuser.h:326
DWORD dbch_size
Definition: dbt.h:73
USER_DEVICE_EVENT_MSG DeviceEventMsg
Definition: winmsg.h:115
NTSTATUS Status
Definition: winmsg.h:104
union _USER_API_MESSAGE::@3973 Data
ULONG_PTR Result
Definition: winmsg.h:95
PBSMINFO
Definition: dosdev.c:30
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
Definition: twain.h:1830
unsigned char UCHAR
Definition: typedefs.h:53
uint32_t DWORD_PTR
Definition: typedefs.h:65
uint32_t * LPDWORD
Definition: typedefs.h:59
int32_t INT
Definition: typedefs.h:58
uint32_t ULONG_PTR
Definition: typedefs.h:65
uint32_t ULONG
Definition: typedefs.h:59
VOID WINAPI SetDebugErrorLevel(DWORD dwLevel)
Definition: stubs.c:40
UINT WINAPI DECLSPEC_HOTPATCH GetRawInputBuffer(_In_opt_ PRAWINPUT pData, _Inout_ PUINT pcbSize, _In_ UINT cbSizeHeader)
Definition: stubs.c:306
DWORD WINAPI WaitForInputIdle(HANDLE hProcess, DWORD dwMilliseconds)
Definition: stubs.c:21
BOOL WINAPI AlignRects(LPRECT rect, DWORD b, DWORD c, DWORD d)
Definition: stubs.c:279
VOID WINAPI AllowForegroundActivation(VOID)
Definition: stubs.c:393
BOOL WINAPI DisplayExitWindowsWarnings(ULONG flags)
Definition: stubs.c:331
BOOL WINAPI EnterReaderModeHelper(HWND hwnd)
Definition: stubs.c:367
BOOL WINAPI BuildReasonArray(PVOID Pointer)
Definition: stubs.c:425
BOOL WINAPI GetReasonTitleFromReasonCode(DWORD dw1, DWORD dw2, DWORD dw3)
Definition: stubs.c:503
WORD WINAPI InitializeWin32EntryTable(UCHAR *EntryTablePlus0x1000)
Definition: stubs.c:384
BOOL WINAPI GetAccCursorInfo(PCURSORINFO pci)
Definition: stubs.c:214
BOOL WINAPI ReasonCodeNeedsBugID(ULONG reasoncode)
Definition: stubs.c:340
HDESK WINAPI GetInputDesktop(VOID)
Definition: stubs.c:203
BOOL WINAPI CtxInitUser32(VOID)
Definition: stubs.c:358
NTSTATUS WINAPI DeviceEventWorker(HWND hwnd, WPARAM wParam, LPARAM lParam, DWORD Data, ULONG_PTR *uResult)
Definition: stubs.c:450
BOOL WINAPI UserLpkTabbedTextOut(DWORD dw1, DWORD dw2, DWORD dw3, DWORD dw4, DWORD dw5, DWORD dw6, DWORD dw7, DWORD dw8, DWORD dw9, DWORD dw10, DWORD dw11, DWORD dw12)
Definition: stubs.c:533
BOOL WINAPI Win32PoolAllocationStats(DWORD dw1, DWORD dw2, DWORD dw3, DWORD dw4, DWORD dw5)
Definition: stubs.c:553
DWORD WINAPI UserRegisterWowHandlers(PVOID Unknown1, PVOID Unknown2)
Definition: stubs.c:417
VOID WINAPI RegisterSystemThread(DWORD flags, DWORD reserved)
Definition: stubs.c:95
VOID WINAPI LoadRemoteFonts(VOID)
Definition: stubs.c:85
BOOL WINAPI ReasonCodeNeedsComment(ULONG reasoncode)
Definition: stubs.c:349
VOID WINAPI CreateSystemThreads(DWORD Unused)
Definition: stubs.c:433
static HBRUSH SysColorBrushes[COLOR_MENUBAR+1]
Definition: stubs.c:147
BOOL WINAPI IsSETEnabled(VOID)
Definition: stubs.c:511
LONG WINAPI CsrBroadcastSystemMessageExW(DWORD dwflags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam, PBSMINFO pBSMInfo)
Definition: stubs.c:225
BOOL WINAPI DestroyReasons(PVOID Pointer)
Definition: stubs.c:442
DWORD WINAPI GetAppCompatFlags(HTASK hTask)
Definition: stubs.c:51
VOID WINAPI LoadLocalFonts(VOID)
Definition: stubs.c:75
BOOL WINAPI RecordShutdownReason(DWORD dw0)
Definition: stubs.c:525
UINT WINAPI GetRawInputDeviceInfoA(_In_opt_ HANDLE hDevice, _In_ UINT uiCommand, _Inout_opt_ LPVOID pData, _Inout_ PUINT pcbSize)
Definition: stubs.c:242
VOID WINAPI ShowStartGlass(DWORD unknown)
Definition: stubs.c:401
LRESULT WINAPI DefRawInputProc(PRAWINPUT *paRawInput, INT nInput, UINT cbSizeHeader)
Definition: stubs.c:290
DWORD_PTR WINAPI SetSysColorsTemp(const COLORREF *pPens, const HBRUSH *pBrushes, DWORD_PTR n)
Definition: stubs.c:151
static HPEN SysColorPens[COLOR_MENUBAR+1]
Definition: stubs.c:146
DWORD WINAPI GetAppCompatFlags2(HTASK hTask)
Definition: stubs.c:63
UINT WINAPI UserRealizePalette(HDC hDC)
Definition: stubs.c:106
VOID WINAPI InitializeLpkHooks(FARPROC *hookfuncs)
Definition: stubs.c:376
DWORD WINAPI GetMenuIndex(HMENU hMenu, HMENU hSubMenu)
Definition: stubs.c:409
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
DWORD COLORREF
Definition: windef.h:100
#define WINAPI
Definition: msvc.h:6
HPEN WINAPI CreatePen(_In_ int, _In_ int, _In_ COLORREF)
#define PS_SOLID
Definition: wingdi.h:586
@ UserpDeviceEvent
Definition: winmsg.h:27
#define USERSRV_SERVERDLL_INDEX
Definition: winmsg.h:15
#define CP_THREAD_ACP
Definition: winnls.h:261