Re: Custom keyboard source samples

From: Marcel Schneider <>
Date: Mon, 31 Aug 2015 16:12:08 +0200 (CEST)

> On 20 Aug 2015 at 03:19, Richard Wordingham wrote:

> On Mon, 17 Aug 2015 13:51:26 +0200 (CEST)
> Marcel Schneider wrote:

>> Since yesterday I know a very simple way to get the source code (in
>> C) of any MSKLC layout.

> Is this legal? To me it smacks of reverse engineering, which is
> prohibited under the MSKLC licence.

On 20 Aug 2015 at 17:41 I'd already discarded the licence as not applying but found another prohibited practice, the illegal use of the software, that must be used "only in certain ways", no working around being allowed:

> Do I “work around any technical limitations in the software” by picking up the source code of the drivers it generates? This is my main concern about this practice. Are we allowed to use files generated by MSKLC that are not expressedly provided to the user?
> Further, are we allowed to use installation packages generated by MSKLC to install other keyboard drivers than those generated by MSKLC? To install keyboard drivers that exceed the limitations of MSKLC?
> The questioning becomes even more troublesome when we remember that the WDK is mentioned in the MSKLC Help, and ask:
> When we accept the invitation to switch towards WDK, must we package the drivers with the resources the driver kit comes along with (while not knowing how to write an INF file!), or may we use the MSI and setup from MSKLC?
> BTW we may wonder why and how MSKLC compiles a Windows-On-Windows driver, while except for a few sparse mentions, nothing seems to be provided for WOW in the WDK.

These questions are now about to be going to be answered:

«It believe it is even technically be a EULA violation, though I can’t imagine it ever being enforced in this case, I mean unless someone tried to sue Microsoft for negative consequences of using a keyboard created by this means. In which case the use of the hack would be a pretty reasonable indemnification of Microsoft here, since someone delved into the land of the specifically unsupported….»

We note that Michael Kaplan does not give legal advice, as he *believes* things are so. But I'm pretty likely to take it for a reality, as it makes Microsoft more a user-friendly company that cares for everybody being at ease with the computer, whatever the keyboard he prefers may look like.

Right technically, there is a very straightforward way to get the source code of any keyboard from its .klc file.
we are showed how to edit the klc file and have Kbdutool running on it to get the drivers, to put these enhanced drivers into the package, and install.
These include the WoW driver, which we can't compile in the WinDDK from the era. (Windows-on-Windows is the 32 bit subsystem running on 64 bit machines for support of 32 bit applications. This requires a second keyboard driver, the one that is in the wow64 folder. If this dll is missing while required, keyboard layout installation fails.)

When we ask Kbdutool for its switches, it shows us also the -s switch for generating sources without compiling.
So to get the C sources, we need to use the two switches -u and -s.

Received on Mon Aug 31 2015 - 09:13:19 CDT

This archive was generated by hypermail 2.2.0 : Mon Aug 31 2015 - 09:13:20 CDT