by Michael S. Kaplan, published on 2013/12/02 16:02 +01:00, original URI: http://blogs.msdn.com/b/michkap/archive/2013/12/02/10471725.aspx
The other day, I was having an email conversation with Naushad Jamil about keyboard layouts.
It was quickly turning into an almost frantic conversation, though not due to anything I was doing or saying.
For some reason, he was insisting on the need to support 64-bit keyboard layouts on 64-bit operating systems.
There was just one problem: all keyboard layouts are 32-bit, even the sign extended 64-bit ones are basically 32-bit underneath.
Unfortunately, there was no way to convince him. I had no proof!
In the end, all I had in my corner was every other keyboard layout ever shipped on Windows.
And that plus every single keyboard layout created by MSKLC.
32-bit, every last one.
Wasn't that proof enough?
For me, sure. But he remained unconvinced.
However, there was a good reason for this to work that way.
A good Architectural reason.
You see, even that 64-bit keyboard layout had to work under the 32-bit subsystem, the SYSWOW64 one.
And the only way to make it work would be for that identical layout to be there for 32-bit applications as well.
THAT can only work if the same layout was there for both 64-bit and 32-bit applications.
When everything was said and done, he didn't have to believe me. That wouldn't stop it from being 100% true...
Perhaps we will have to rethink all of this when we are considering 128-bit operating systems.
But even then, I doubt anything will change. It is not like any additional complexity is required in defining keyboard layouts that would require any additional complexity.
I may never need to go beyond those 32-bit layouts even when dealing with Windows Phone keyboard layouts! 😊😏😊😏😊
And in the end he admitted it:
You are correct. I did a quick test with MSKLC 1.4. Generated a keyboard and it seems to work fine on my 64-bit windows 8.1. That already smells like a solution. My keyboard was generated with a first gen MSKLC (I don’t know could be 1.1) and probably something was broken there that the keyboards didn’t work with 64-bit OS-es. It seems the later versions such as 1.4 took care of that problem.
Thanks a lot Michael. Your input has helped because I wasn’t going to give the 32-bit MSKLC 1.4 a try assuming that I would need to build a 64-bit version to fix my problem.
Kind of says it all... 😏;-)
go to newer or older post, or back to index or month or day