ReactOS 0.4.15-dev-8127-g6338913
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 */
223UINT
224WINAPI
226 HANDLE hDevice,
227 UINT uiCommand,
229 PUINT pcbSize)
230{
232 return 0;
233}
234
235/*
236 * @unimplemented
237 */
238LONG
239WINAPI
242 LPDWORD lpdwRecipients,
243 UINT uiMessage,
246 PBSMINFO pBSMInfo)
247{
249 return FALSE;
250}
251
252/*
253 * @unimplemented
254 */
255UINT
256WINAPI
258 HANDLE hDevice,
259 UINT uiCommand,
261 PUINT pcbSize)
262{
264 return 0;
265}
266
267/*
268 * @unimplemented
269 */
270BOOL
271WINAPI
273{
275 return FALSE;
276}
277
278/*
279 * @implemented
280 */
282WINAPI
284 PRAWINPUT* paRawInput,
285 INT nInput,
286 UINT cbSizeHeader)
287{
288 if (cbSizeHeader == sizeof(RAWINPUTHEADER))
289 return S_OK;
290 return 1;
291}
292
293/*
294 * @unimplemented
295 */
296UINT
297WINAPI
300 PRAWINPUT pData,
301 PUINT pcbSize,
302 UINT cbSizeHeader)
303{
305 return 0;
306}
307
308/*
309 * @unimplemented
310 */
311UINT
312WINAPI
314 HRAWINPUT hRawInput,
315 UINT uiCommand,
317 PUINT pcbSize,
318 UINT cbSizeHeader)
319{
321 return 0;
322}
323
324/*
325 * @unimplemented
326 */
327UINT
328WINAPI
330 PRAWINPUTDEVICELIST pRawInputDeviceList,
331 PUINT puiNumDevices,
332 UINT cbSize)
333{
334 if(pRawInputDeviceList)
335 memset(pRawInputDeviceList, 0, sizeof *pRawInputDeviceList);
336 if(puiNumDevices)
337 *puiNumDevices = 0;
338
340 return 0;
341}
342
343/*
344 * @unimplemented
345 */
346UINT
347WINAPI
350 PRAWINPUTDEVICE pRawInputDevices,
351 PUINT puiNumDevices,
352 UINT cbSize)
353{
355 return 0;
356}
357
358/*
359 * @unimplemented
360 */
361BOOL
362WINAPI
365 PCRAWINPUTDEVICE pRawInputDevices,
366 UINT uiNumDevices,
367 UINT cbSize)
368{
370 return FALSE;
371}
372
373/*
374 * @unimplemented
375 */
377{
379 return FALSE;
380}
381
382/*
383 * @unimplemented
384 */
386{
388 return FALSE;
389}
390
391/*
392 * @unimplemented
393 */
395{
397 return FALSE;
398}
399
400/*
401 * @unimplemented
402 */
404{
406 return FALSE;
407}
408
409/*
410 * @unimplemented
411 */
413{
415 return FALSE;
416}
417
418/*
419 * @unimplemented
420 */
422{
424}
425
426/*
427 * @unimplemented
428 */
430{
432 return FALSE;
433}
434
435/*
436 * @unimplemented
437 */
439{
441 return FALSE;
442}
443
444/*
445 * @unimplemented
446 */
448{
450}
451
452/*
453 * @unimplemented
454 */
456{
458}
459
460/*
461 * @implemented
462 */
464{
465 return NtUserGetMenuIndex(hMenu, hSubMenu);
466}
467
468/*
469 * @unimplemented
470 */
472{
474 return 0;
475}
476
477BOOL
478WINAPI
480{
482 return FALSE;
483}
484
485VOID
486WINAPI
488{
489 /* Thread call for remote processes (non-CSRSS) only */
491 ExitThread(0);
492}
493
494BOOL
495WINAPI
497{
499 return FALSE;
500}
501
503WINAPI
505{
506 USER_API_MESSAGE ApiMessage;
507 PUSER_DEVICE_EVENT_MSG pusem = &ApiMessage.Data.DeviceEventMsg;
508
509 pusem->hwnd = hwnd;
510 pusem->wParam = wParam;
511 pusem->lParam = lParam;
512 pusem->Data = Data;
513 pusem->Result = 0;
514
515 TRACE("DeviceEventWorker : hwnd %p, wParam %d, lParam %d, Data %d, uResult %p\n", hwnd, wParam, lParam, Data, uResult);
516
517 if ( lParam == 0 )
518 {
520 NULL,
522 sizeof(*pusem) );
523 }
524 else
525 {
526 PCSR_CAPTURE_BUFFER pcsrcb = NULL;
528 ULONG BufferSize = pdev_br->dbch_size;
529
531
532 if ( !pcsrcb )
533 {
534 return STATUS_NO_MEMORY;
535 }
536
538
540 pcsrcb,
542 sizeof(*pusem) );
543
544 CsrFreeCaptureBuffer( pcsrcb );
545 }
546
547 if (NT_SUCCESS(ApiMessage.Status))
548 {
549 *uResult = pusem->Result;
550 }
551
552 return ApiMessage.Status;
553}
554
555BOOL
556WINAPI
558{
560 return FALSE;
561}
562
563BOOL
564WINAPI
566{
567 /*
568 * Determines whether the Shutdown Event Tracker is enabled.
569 *
570 * See http://undoc.airesoft.co.uk/user32.dll/IsSETEnabled.php
571 * for more information.
572 */
574 return FALSE;
575}
576
577BOOL
578WINAPI
580{
582 return FALSE;
583}
584
585BOOL
586WINAPI
588 DWORD dw1,
589 DWORD dw2,
590 DWORD dw3,
591 DWORD dw4,
592 DWORD dw5,
593 DWORD dw6,
594 DWORD dw7,
595 DWORD dw8,
596 DWORD dw9,
597 DWORD dw10,
598 DWORD dw11,
599 DWORD dw12)
600{
602 return FALSE;
603}
604
605BOOL
606WINAPI
608{
610 return FALSE;
611}
612
static HDC hDC
Definition: 3dtext.c:33
#define DECLSPEC_HOTPATCH
Definition: _mingw.h:243
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
Definition: precomp.h:23
LONG NTSTATUS
Definition: precomp.h:26
#define FIXME(fmt,...)
Definition: debug.h:114
#define UNIMPLEMENTED
Definition: debug.h:118
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
#define CSR_CREATE_API_NUMBER(ServerId, ApiId)
Definition: csrmsg.h:37
struct _DEV_BROADCAST_HDR * PDEV_BROADCAST_HDR
#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:32
static WCHAR unknown[MAX_STRING_RESOURCE_LEN]
Definition: object.c:1605
#define GetProcessHeap()
Definition: compat.h:736
int(* FARPROC)()
Definition: compat.h:36
#define HeapAlloc
Definition: compat.h:733
#define HeapFree(x, y, z)
Definition: compat.h:735
VOID WINAPI ExitThread(IN DWORD uExitCode)
Definition: thread.c:365
r reserved
Definition: btrfs.c:3006
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned short WORD
Definition: ntddk_ex.h:93
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
UINT NTAPI NtUserGetMenuIndex(HMENU hMenu, HMENU hSubMenu)
Definition: menu.c:6075
#define GetWin32ClientInfo()
Definition: ntuser.h:352
DWORD NTAPI NtUserWaitForInputIdle(IN HANDLE hProcess, IN DWORD dwMilliseconds, IN BOOL bSharedWow)
Definition: message.c:3060
#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
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
static _In_ DWORD dwflags
Definition: dispmode.c:64
static HDC
Definition: imagelist.c:92
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:63
unsigned int * PUINT
Definition: ndis.h:50
unsigned int UINT
Definition: ndis.h:50
#define LPVOID
Definition: nt_native.h:45
#define STATUS_NO_MEMORY
Definition: ntstatus.h:260
EXTINLINE VOID NtUserxCreateSystemThreads(BOOL bRemoteProcess)
Definition: ntwrapper.h:646
EXTINLINE UINT NtUserxRealizePalette(HDC hDC)
Definition: ntwrapper.h:641
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 memset(x, y, z)
Definition: compat.h:39
#define TRACE(s)
Definition: solgame.cpp:4
& rect
Definition: startmenu.cpp:1413
DWORD dwCompatFlags2
Definition: ntuser.h:323
DWORD dwCompatFlags
Definition: ntuser.h:322
DWORD dbch_size
Definition: dbt.h:73
union _USER_API_MESSAGE::@3546 Data
USER_DEVICE_EVENT_MSG DeviceEventMsg
Definition: winmsg.h:115
NTSTATUS Status
Definition: winmsg.h:104
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
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
_In_ WDFMEMORY _Out_opt_ size_t * BufferSize
Definition: wdfmemory.h:254
VOID WINAPI SetDebugErrorLevel(DWORD dwLevel)
Definition: stubs.c:40
BOOL WINAPI IsServerSideWindow(HWND wnd)
Definition: stubs.c:438
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:272
VOID WINAPI AllowForegroundActivation(VOID)
Definition: stubs.c:447
BOOL WINAPI DisplayExitWindowsWarnings(ULONG flags)
Definition: stubs.c:376
UINT WINAPI DECLSPEC_HOTPATCH GetRawInputBuffer(PRAWINPUT pData, PUINT pcbSize, UINT cbSizeHeader)
Definition: stubs.c:299
BOOL WINAPI EnterReaderModeHelper(HWND hwnd)
Definition: stubs.c:412
BOOL WINAPI BuildReasonArray(PVOID Pointer)
Definition: stubs.c:479
BOOL WINAPI GetReasonTitleFromReasonCode(DWORD dw1, DWORD dw2, DWORD dw3)
Definition: stubs.c:557
UINT WINAPI DECLSPEC_HOTPATCH GetRegisteredRawInputDevices(PRAWINPUTDEVICE pRawInputDevices, PUINT puiNumDevices, UINT cbSize)
Definition: stubs.c:349
WORD WINAPI InitializeWin32EntryTable(UCHAR *EntryTablePlus0x1000)
Definition: stubs.c:429
BOOL WINAPI GetAccCursorInfo(PCURSORINFO pci)
Definition: stubs.c:214
BOOL WINAPI ReasonCodeNeedsBugID(ULONG reasoncode)
Definition: stubs.c:385
HDESK WINAPI GetInputDesktop(VOID)
Definition: stubs.c:203
BOOL WINAPI DECLSPEC_HOTPATCH RegisterRawInputDevices(PCRAWINPUTDEVICE pRawInputDevices, UINT uiNumDevices, UINT cbSize)
Definition: stubs.c:364
UINT WINAPI GetRawInputDeviceInfoA(HANDLE hDevice, UINT uiCommand, LPVOID pData, PUINT pcbSize)
Definition: stubs.c:257
BOOL WINAPI CtxInitUser32(VOID)
Definition: stubs.c:403
NTSTATUS WINAPI DeviceEventWorker(HWND hwnd, WPARAM wParam, LPARAM lParam, DWORD Data, ULONG_PTR *uResult)
Definition: stubs.c:504
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:587
BOOL WINAPI Win32PoolAllocationStats(DWORD dw1, DWORD dw2, DWORD dw3, DWORD dw4, DWORD dw5)
Definition: stubs.c:607
DWORD WINAPI UserRegisterWowHandlers(PVOID Unknown1, PVOID Unknown2)
Definition: stubs.c:471
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:394
VOID WINAPI CreateSystemThreads(DWORD Unused)
Definition: stubs.c:487
UINT WINAPI GetRawInputDeviceInfoW(HANDLE hDevice, UINT uiCommand, LPVOID pData, PUINT pcbSize)
Definition: stubs.c:225
static HBRUSH SysColorBrushes[COLOR_MENUBAR+1]
Definition: stubs.c:147
BOOL WINAPI IsSETEnabled(VOID)
Definition: stubs.c:565
LONG WINAPI CsrBroadcastSystemMessageExW(DWORD dwflags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam, PBSMINFO pBSMInfo)
Definition: stubs.c:240
BOOL WINAPI DestroyReasons(PVOID Pointer)
Definition: stubs.c:496
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:579
UINT WINAPI GetRawInputData(HRAWINPUT hRawInput, UINT uiCommand, LPVOID pData, PUINT pcbSize, UINT cbSizeHeader)
Definition: stubs.c:313
VOID WINAPI ShowStartGlass(DWORD unknown)
Definition: stubs.c:455
LRESULT WINAPI DefRawInputProc(PRAWINPUT *paRawInput, INT nInput, UINT cbSizeHeader)
Definition: stubs.c:283
DWORD_PTR WINAPI SetSysColorsTemp(const COLORREF *pPens, const HBRUSH *pBrushes, DWORD_PTR n)
Definition: stubs.c:151
UINT WINAPI GetRawInputDeviceList(PRAWINPUTDEVICELIST pRawInputDeviceList, PUINT puiNumDevices, UINT cbSize)
Definition: stubs.c:329
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:421
DWORD WINAPI GetMenuIndex(HMENU hMenu, HMENU hSubMenu)
Definition: stubs.c:463
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
LONG_PTR LPARAM
Definition: windef.h:208
LONG_PTR LRESULT
Definition: windef.h:209
UINT_PTR WPARAM
Definition: windef.h:207
DWORD COLORREF
Definition: windef.h:300
#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
unsigned char UCHAR
Definition: xmlstorage.h:181