/* INCLUDES ******************************************************************/
-#include <w32k.h>
+#include <win32k.h>
#define NDEBUG
#include <debug.h>
ERESOURCE UserLock;
ATOM AtomMessage; // Window Message atom.
+ATOM AtomWndObj; // Window Object atom.
BOOL gbInitialized;
HINSTANCE hModClient = NULL;
BOOL ClientPfnInit = FALSE;
/* System Context Help Id Atom */
gpsi->atomContextHelpIdProp = IntAddGlobalAtom(L"SysCH", TRUE);
+ AtomWndObj = IntAddGlobalAtom(L"SysWNDO", TRUE);
+
return STATUS_SUCCESS;
}
/* FUNCTIONS *****************************************************************/
-
-NTSTATUS FASTCALL InitUserImpl(VOID)
+INIT_FUNCTION
+NTSTATUS
+NTAPI
+InitUserImpl(VOID)
{
NTSTATUS Status;
return Status;
}
- if (!gpsi)
- {
- gpsi = UserHeapAlloc(sizeof(SERVERINFO));
- if (gpsi)
- {
- RtlZeroMemory(gpsi, sizeof(SERVERINFO));
- DPRINT("Global Server Data -> %x\n", gpsi);
- }
- }
-
InitUserAtoms();
InitSysParams();
return STATUS_SUCCESS;
}
+NTSTATUS
+NTAPI
+InitVideo();
NTSTATUS
NTAPI
// Set W32PF_Flags |= (W32PF_READSCREENACCESSGRANTED | W32PF_IOWINSTA)
// Create Object Directory,,, Looks like create workstation. "\\Windows\\WindowStations"
// Create Event for Diconnect Desktop.
-// Initialize Video.
+
+ /* Initialize Video. */
+ Status = InitVideo();
+ if (!NT_SUCCESS(Status)) return Status;
+
// {
// DrvInitConsole.
// DrvChangeDisplaySettings.
// Callback to User32 Client Thread Setup
- Status = co_IntClientThreadSetup();
+ co_IntClientThreadSetup();
// }
// Set Global SERVERINFO Error flags.
NtUserUpdatePerUserSystemParameters(0, TRUE);
+ CsrInit();
+
return STATUS_SUCCESS;
}
{
NTSTATUS Status;
- DPRINT("Enter NtUserInitialize(%lx, %p, %p)\n",
- dwWinVersion, hPowerRequestEvent, hMediaRequestEvent);
+ DPRINT1("Enter NtUserInitialize(%lx, %p, %p)\n",
+ dwWinVersion, hPowerRequestEvent, hMediaRequestEvent);
/* Check the Windows version */
if (dwWinVersion != 0)