Creating the Keyboard DLL Sources File (Windows CE 5.0)
Typically, you build the keyboard dynamic-link libraries (DLLs) from the keyboard driver directory, which is in the %_WINCEROOT%\Platform\%_TGTPLAT%\Drivers directory. The directory paths vary slightly, depending on the hardware platform.
The sources file that determines how a keyboard driver builds must link the platform-dependent driver (PDD), PDD list, interrupt service thread (IST), device layout, and input language, unless the device layout and input language are in separate DLLs.
The following list shows some potential input locale directories, in the latest Platform Builder installation, where you can create the keyboard DLL sources file:
- %_WINCEROOT%\Platform\%_TGTPLAT%\Drivers\Mykbdmouse\KBDXSCXTMSENGUS1
- %_WINCEROOT%\Platform\%_TGTPLAT%\Drivers\Mykbdmouse\KBDXSCXTMSJPN1
- %_WINCEROOT%\Platform\%_TGTPLAT%\Drivers\Mykbdmouse\KBDXSCXTMSJPN2
- %_WINCEROOT%\Platform\%_TGTPLAT%\Drivers\Mykbdmouse\KBDXSCXTMSKOR1
To create the keyboard DLL sources file
Create a sources file in every directory that represents an input locale.
You can use other sources files as templates.
Add .lib files to the SOURCELIBS macro definition.
The following table shows the libraries to add to the SOURCELIBS macro definition.
Library Description LayoutManager.lib Required Kbdmscommon.lib, or the library representing your keyboard PDD Required Kbdpddlist.lib, or the library representing your PDD list Required KeybdIst.lib Required if you are using the generic IST from %_WINCEROOT%\Public\Common\Oak\Drivers\Keybd\Ist InputLang_0409.lib, or the library representing the input languages Required unless the input language is in a separate DLL PS2_AT_00000409.lib, or the library representing the device layouts Required unless the device layout is in a separate DLL NumPadRmp.lib Required if any of the device layout remapping functions use this library Verify the content of the entire sources file.
The following sources file code example is a model for the sources files for each input locale that you support in your keyboard driver.
SYNCHRONIZE_DRAIN=1 RELEASETYPE=PLATFORM TARGETNAME=KbdXscXTMsEngUs1 DEFFILE=$(_COMMONOAKROOT)\INC\kbdmouse.def TARGETTYPE=DYNLINK DLLENTRY=DllMain TARGETLIBS= \ $(_COMMONSDKROOT)\lib\$(_CPUINDPATH)\coredll.lib \ $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\ceddk.lib \ $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\drvlib.lib SOURCELIBS=\ $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\KbdmsCommon.lib \ $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\KeybdIst.lib \ $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\PS2_AT_00000409.lib \ $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\layoutmanager.lib \ $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\kbdpddlist.lib \ $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\InputLang_0409.lib \ $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\numpadrmp.lib WINCETARGETFILE=dummy SOURCES=
See Also
Send Feedback on this topic to the authors