Note: this blog is intended for Keyman Developer Branding Pack Users.  It is not applicable for Keyman Desktop or KeymanWeb.

The default settings for Keyman Engine may not be what you want for your product.  It is possible to change the default options by adding the values to the .wxs intermediate file created by the Product Editor.  The .wxs file will then be used to compile the product installer.

  1. View the knowledge base article at Tavultesoft KB article KMKB0060 and decide which settings you want to implement
  2. Open the Product Editor for myproduct.kpp and click “Export to WiX” in the Compile tab.  Export the files to c:myproduct (or replace this with your own path)
  3. Load the myproduct.wxs file generated in the C:myproductbuild folder in an XML editor.  An XML editor is recommended because otherwise it is hard to read, but can use any Unicode-compliant text editor if you prefer.
  4. In the section <Component Id=”component_CurrentUser”, add Registry values as per the following example for “auto open osk” (available types are ‘integer’ or ‘string’):
    <Registry Root=”HKCU” Key=”SoftwareTavultesoftKeyman Engine7.0″ Type=”integer” Name=”auto open osk” Value=”0″ />
  5. Create a batch file with the following commands, tweaked as per your product name and choice of folders, and then run it:
    cd myproductbuild
    “program filesTavultesoftKeyman Developer 7.0WiXcandle.exe” myproduct.wxs
    cd myproduct
    “program filesTavultesoftKeyman Developer 7.0WiXlight.exe” -out myproduct.msi buildmyproduct.wixobj “Program FilesTavultesoftKeyman Developer 7.0WiXwixui.wixlib” -loc “program filesTavultesoft Keyman Developer 7.0WiXWixUI_en-us.wxl” -b “Program FilesTavultesoftKeyman Developer 7.0RedistDesktop”

    EDIT 11/11/09: Fixed incorrect directory for light.exe command — thanks Amaryllis for pointing this out.

  6. This will generate a myproduct.msi file with the options preset as you desire.

If you want to make a new version of the installer, I recommend that you start from Step 2 again as Keyman Developer will manage the upgrade of the .wxs file, which needs a number of changes to make it work correctly for an upgrade.  So make sure you save a copy of the <Registry> XML tags that you add, so you can paste them into the updated .wxs file in this situation.

We plan to add a RegistryKeys section to the .kpp file in a future update of Keyman Developer to reduce the complexity of this process.

Categories: Uncategorized

0 thoughts on “Specifying default options for Keyman Engine at install time”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Related Posts


Keyman 17.0 is now available in beta

We are excited to announce that Keyman 17.0 is officially in beta. You can download Keyman 17.0 beta on Keyman downloads website. You are welcome to send us any feedback for Keyman 17.0 on Keyman Read more…


The Keyman Intern Project

Several members of the Keyman team work out of the National Polytechnic Institute of Cambodia (NPIC), វិទ្យាស្ថានជាតិពហុបច្ចេកទេសកម្ពុជា, in Phnom Penh, the capital of Cambodia. One of the things the Keyman team tries to do is Read more…


Keyman 16.0 now available!

We are pleased to announce that we have now released Keyman 16.0! You can download Keyman 16.0 on the Keyman downloads website. In version 16.0, we have a few new features, but our focus has Read more…