return 0;
}
-DWORD
-APIENTRY
-NtUserExcludeUpdateRgn(
- HDC hDC,
- HWND hWnd)
-{
- STUB
-
- return 0;
-}
-
BOOL
APIENTRY
NtUserGetAltTabInfo(
DWORD Unknown0,
DWORD Unknown1)
{
- STUB
+ STUB;
return 0;
}
+DWORD
+APIENTRY
+NtUserSetDbgTagCount(
+ DWORD Unknown0)
+{
+ STUB;
+
+ return 0;
+}
+
DWORD
APIENTRY
NtUserSetRipFlags(
- DWORD Unknown0,
- DWORD Unknown1)
+ DWORD Unknown0)
+{
+ STUB;
+
+ return 0;
+}
+
+DWORD
+APIENTRY
+NtUserDbgWin32HeapFail(
+ DWORD Unknown0,
+ DWORD Unknown1)
+{
+ STUB
+
+ return 0;
+}
+
+DWORD
+APIENTRY
+NtUserDbgWin32HeapStat(
+ DWORD Unknown0,
+ DWORD Unknown1)
{
STUB
return 0;
}
-NTSTATUS
-APIENTRY
-NtUserConsoleControl(
- IN CONSOLECONTROL ConsoleCtrl,
- IN PVOID ConsoleCtrlInfo,
- IN ULONG ConsoleCtrlInfoLength)
-{
- NTSTATUS Status = STATUS_SUCCESS;
-
- /* Allow only the Console Server to perform this operation (via CSRSS) */
- if (PsGetCurrentProcess() != gpepCSRSS)
- return STATUS_ACCESS_DENIED;
-
- UserEnterExclusive();
-
- switch (ConsoleCtrl)
- {
- case GuiConsoleWndClassAtom:
- {
- if (ConsoleCtrlInfoLength != sizeof(ATOM))
- {
- Status = STATUS_INFO_LENGTH_MISMATCH;
- break;
- }
-
- _SEH2_TRY
- {
- ProbeForRead(ConsoleCtrlInfo, ConsoleCtrlInfoLength, 1);
- gaGuiConsoleWndClass = *(ATOM*)ConsoleCtrlInfo;
- }
- _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
- {
- Status = _SEH2_GetExceptionCode();
- }
- _SEH2_END;
-
- break;
- }
-
- case ConsoleMakePalettePublic:
- {
- HPALETTE hPalette;
-
- if (ConsoleCtrlInfoLength != sizeof(HPALETTE))
- {
- Status = STATUS_INFO_LENGTH_MISMATCH;
- break;
- }
-
- _SEH2_TRY
- {
- ProbeForRead(ConsoleCtrlInfo, ConsoleCtrlInfoLength, 1);
- hPalette = *(HPALETTE*)ConsoleCtrlInfo;
- }
- _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
- {
- Status = _SEH2_GetExceptionCode();
- }
- _SEH2_END;
-
- /* Make the palette handle public */
- GreSetObjectOwnerEx(hPalette,
- GDI_OBJ_HMGR_PUBLIC,
- GDIOBJFLAG_IGNOREPID);
-
- break;
- }
-
- case ConsoleAcquireDisplayOwnership:
- {
- ERR("NtUserConsoleControl - ConsoleAcquireDisplayOwnership is UNIMPLEMENTED\n");
- Status = STATUS_NOT_IMPLEMENTED;
- break;
- }
-
- default:
- ERR("Calling invalid control %d in NtUserConsoleControl\n", ConsoleCtrl);
- Status = STATUS_INVALID_INFO_CLASS;
- break;
- }
-
- UserLeave();
-
- return Status;
-}
-
DWORD
APIENTRY
NtUserCreateInputContext(
return 0;
}
-DWORD
-APIENTRY
-NtUserResolveDesktop(
- DWORD dwUnknown1,
- DWORD dwUnknown2,
- DWORD dwUnknown3,
- DWORD dwUnknown4)
+DWORD APIENTRY
+NtUserResolveDesktopForWOW(DWORD Unknown0)
{
- STUB;
+ STUB
return 0;
}
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
{
Status = _SEH2_GetExceptionCode();
+ _SEH2_YIELD(break);
}
_SEH2_END;
- if (NT_SUCCESS(Status))
- Status = UserInitiateShutdown(Thread, &CapturedFlags);
+ Status = UserInitiateShutdown(Thread, &CapturedFlags);
/* Return the modified value to the caller */
_SEH2_TRY
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
{
Status = _SEH2_GetExceptionCode();
+ _SEH2_YIELD(break);
}
_SEH2_END;
- if (NT_SUCCESS(Status))
- Status = UserEndShutdown(Thread, ShutdownStatus);
-
+ Status = UserEndShutdown(Thread, ShutdownStatus);
break;
}
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
{
Status = _SEH2_GetExceptionCode();
+ _SEH2_YIELD(break);
}
_SEH2_END;
- if (NT_SUCCESS(Status))
- Status = InitCsrApiPort(CsrPortHandle);
-
+ Status = InitCsrApiPort(CsrPortHandle);
break;
}
return 0;
}
-/*
- * @unimplemented
- */
-DWORD
-APIENTRY
-NtUserDrawMenuBarTemp(
- HWND hWnd,
- HDC hDC,
- PRECT hRect,
- HMENU hMenu,
- HFONT hFont)
-{
- /* We'll use this function just for caching the menu bar */
- STUB
- return 0;
-}
-
-/*
- * FillWindow: Called from User; Dialog, Edit and ListBox procs during a WM_ERASEBKGND.
- */
-/*
- * @unimplemented
- */
-BOOL APIENTRY
-NtUserFillWindow(HWND hWndPaint,
- HWND hWndPaint1,
- HDC hDC,
- HBRUSH hBrush)
-{
- STUB
-
- return 0;
-}
-
/*
* @unimplemented
*/
return 0;
}
-BOOL
-APIENTRY
-NtUserGetLayeredWindowAttributes(
- HWND hwnd,
- COLORREF *pcrKey,
- BYTE *pbAlpha,
- DWORD *pdwFlags)
-{
- STUB;
- return 0;
-}
-
-/*
- * @unimplemented
- */
-BOOL APIENTRY
-NtUserSetLayeredWindowAttributes(HWND hwnd,
- COLORREF crKey,
- BYTE bAlpha,
- DWORD dwFlags)
-{
- STUB;
- return FALSE;
-}
-
-/*
- * @unimplemented
- */
-BOOL
-APIENTRY
-NtUserUpdateLayeredWindow(
- HWND hwnd,
- HDC hdcDst,
- POINT *pptDst,
- SIZE *psize,
- HDC hdcSrc,
- POINT *pptSrc,
- COLORREF crKey,
- BLENDFUNCTION *pblend,
- DWORD dwFlags,
- RECT *prcDirty)
-{
- STUB
-
- return 0;
-}
-
-/*
- * NtUserResolveDesktopForWOW
- *
- * Status
- * @unimplemented
- */
-
-DWORD APIENTRY
-NtUserResolveDesktopForWOW(DWORD Unknown0)
-{
- STUB
- return 0;
-}
-
-/*
- * @unimplemented
- */
-BOOL APIENTRY
-NtUserEndMenu(VOID)
-{
- STUB
-
- return 0;
-}
-
-/*
- * @implemented
- */
-/* NOTE: unused function */
-BOOL APIENTRY
-NtUserTrackPopupMenuEx(
- HMENU hMenu,
- UINT fuFlags,
- int x,
- int y,
- HWND hWnd,
- LPTPMPARAMS lptpm)
-{
- STUB
-
- return FALSE;
-}
-
DWORD APIENTRY
NtUserQuerySendMessage(DWORD Unknown0)
{
return FALSE;
}
+// Yes, I know, these do not belong here, just tell me where to put them
+BOOL
+APIENTRY
+NtGdiMakeObjectXferable(
+ _In_ HANDLE hHandle,
+ _In_ DWORD dwProcessId)
+{
+ STUB;
+ return 0;
+}
+
+DWORD
+APIENTRY
+NtDxEngGetRedirectionBitmap(
+ DWORD Unknown0)
+{
+ STUB;
+ return 0;
+}
+
+
/* EOF */