Author: jimtabor
Date: Mon May 28 00:47:12 2007
New Revision: 26927
URL:
http://svn.reactos.org/svn/reactos?rev=26927&view=rev
Log:
Fix NtUserLoadKeyboardLayoutEx prototype:
- Current prototype breaks compatibility.
- This prototype was researched in clean room techniques.
- Any questions, please email me, I will write a book to explain these techniques.
Modified:
trunk/reactos/dll/win32/user32/windows/input.c
trunk/reactos/include/reactos/win32k/ntuser.h
trunk/reactos/subsystems/win32/win32k/ntuser/kbdlayout.c
Modified: trunk/reactos/dll/win32/user32/windows/input.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/windows/i…
==============================================================================
--- trunk/reactos/dll/win32/user32/windows/input.c (original)
+++ trunk/reactos/dll/win32/user32/windows/input.c Mon May 28 00:47:12 2007
@@ -298,9 +298,9 @@
LoadKeyboardLayoutA(LPCSTR pwszKLID,
UINT Flags)
{
- return NtUserLoadKeyboardLayoutEx(
+ return NtUserLoadKeyboardLayoutEx( NULL, 0, NULL, NULL,
strtoul(pwszKLID, NULL, 16),
- Flags, 0, 0, 0, 0);
+ Flags);
}
@@ -312,10 +312,10 @@
UINT Flags)
{
// Look at revision 25596 to see how it's done in windows.
- // We will do things our own way.
- return NtUserLoadKeyboardLayoutEx(
+ // We will do things our own way. Also be compatible too!
+ return NtUserLoadKeyboardLayoutEx( NULL, 0, NULL, NULL,
wcstoul(pwszKLID, NULL, 16),
- Flags, 0, 0, 0, 0);
+ Flags);
}
Modified: trunk/reactos/include/reactos/win32k/ntuser.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/win32k/ntu…
==============================================================================
--- trunk/reactos/include/reactos/win32k/ntuser.h (original)
+++ trunk/reactos/include/reactos/win32k/ntuser.h Mon May 28 00:47:12 2007
@@ -1229,12 +1229,12 @@
HKL
STDCALL
NtUserLoadKeyboardLayoutEx(
+ IN HANDLE Handle,
+ IN DWORD offTable,
+ IN HKL hKL,
+ IN PUNICODE_STRING puszKLID,
IN DWORD dwKLID,
- IN UINT Flags,
- IN DWORD Unused1,
- IN DWORD Unused2,
- IN DWORD Unused3,
- IN DWORD Unused4);
+ IN UINT Flags);
BOOL
NTAPI
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/kbdlayout.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/nt…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/kbdlayout.c (original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/kbdlayout.c Mon May 28 00:47:12 2007
@@ -489,12 +489,12 @@
HKL
STDCALL
NtUserLoadKeyboardLayoutEx(
+ IN HANDLE Handle,
+ IN DWORD offTable,
+ IN HKL hKL,
+ IN PUNICODE_STRING puszKLID,
IN DWORD dwKLID,
- IN UINT Flags,
- IN DWORD Unused1,
- IN DWORD Unused2,
- IN DWORD Unused3,
- IN DWORD Unused4)
+ IN UINT Flags)
{
HKL Ret = NULL;
PKBL pKbl = NULL, Cur;