Author: hbelusca
Date: Sun Jan 27 13:55:04 2013
New Revision: 58241
URL:
http://svn.reactos.org/svn/reactos?rev=58241&view=rev
Log:
[SMSS]
Revert my change of loading the win32k kernel-mode subsystem driver by reading the Kmode
value and use instead a hardcoded value, per request of Alex.
I'm wondering why Windows wouldn't allow you to use a personalized value there and
forces you to use win32k with this name, placed in \SystemRoot\System32 directory and not
in an other place.
Modified:
trunk/reactos/base/system/smss/smsubsys.c
Modified: trunk/reactos/base/system/smss/smsubsys.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/smss/smsubsys.…
==============================================================================
--- trunk/reactos/base/system/smss/smsubsys.c [iso-8859-1] (original)
+++ trunk/reactos/base/system/smss/smsubsys.c [iso-8859-1] Sun Jan 27 13:55:04 2013
@@ -515,7 +515,7 @@
{
NTSTATUS Status = STATUS_SUCCESS, Status2;
PSMP_REGISTRY_VALUE RegEntry;
- UNICODE_STRING NtPath;
+ UNICODE_STRING DestinationString, NtPath;
PLIST_ENTRY NextEntry;
LARGE_INTEGER Timeout;
PVOID State;
@@ -570,10 +570,15 @@
}
AttachedSessionId = *MuSessionId;
- /* Start Win32k.sys on this session */
+ /*
+ * Start Win32k.sys on this session. Use a hardcoded value
+ * instead of the Kmode one...
+ */
+ RtlInitUnicodeString(&DestinationString,
+
L"\\SystemRoot\\System32\\win32k.sys");
Status = NtSetSystemInformation(SystemExtendServiceTableInformation,
- &NtPath,
- sizeof(NtPath));
+ &DestinationString,
+ sizeof(DestinationString));
RtlFreeHeap(RtlGetProcessHeap(), 0, NtPath.Buffer);
SmpReleasePrivilege(State);
if (!NT_SUCCESS(Status))