MSFN Forum: Microsoft keyboard layout creator Standalone Installer - MSFN Forum

Jump to content


Unattended CD/DVD Guide Homepage · MSFN Forum Rules

Welcome to the Applications Installs forum. Make sure you read the forum rules before you start posting.

Links/Requests to warez and/or any illegal material (porn, cracks, serials, etc..) will not be tolerated. Discussion of circumventing WGA/activation/timebombs/keygens or any other illegal activity will also not be tolerated.

We try our best to keep this forum clean of illegal content. If you see any illegal activity use the "report" button you find in every post to report the specific post to the moderators. If you ignore any of the rules you will be banned without notice.

Read Forum Rules
Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Microsoft keyboard layout creator Standalone Installer Rate Topic: -----

#1 User is offline   n00b2012 

  • Group: Members
  • Posts: 1
  • Joined: 21-October 12
  • OS:Windows 7 x86
  • Country: Country Flag

Posted 22 October 2012 - 09:21 AM

Hey All,

I am not much expert with installers and stuff but I have a simple question I have created a custom keyboard layout using Microsoft keyboard layout creator, and it came up with Microsoft Installer.

Now I want to install that custom keyboard layout with my own installer with my custom made fonts , ie; install shield or advance installer.

1- While running the Microsoft Installer i noticed it make changes in following registry keys.


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\]

[HKEY_CURRENT_USER\Keyboard Layout\Preload]

[HKEY_CURRENT_USER\Keyboard Layout\Substitutes][/CODE]


So i copied my urdu.dll (custom keyboard layout file) in system 32 folder and executed following reg file


REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000420]

"Layout Text"="Urdu Keyboard"
"Layout File"="urdu.dll"
"Layout Id"="00c1"
"Layout Product Code"="{2F7B2D99-599B-4D70-8C0A-C088DEDA824D}"
"Layout Display Name"="@%SystemRoot%\\system32\\urdu.dll,-1000"
"Custom Language Display Name"="@%SystemRoot%\\system32\\urdu.dll,-1100"
"Custom Language Name"="Urdu (Islamic Republic of Pakistan)"


[HKEY_CURRENT_USER\Keyboard Layout\Preload]
"3"="00000420"


[HKEY_CURRENT_USER\Keyboard Layout\Substitutes]
"00000420"="a0000420"



but even though after making these changes , the keyboard doesn't show up in "Language Bar Settings Menu"

while when i install my Layout with Microsoft Keyboard Layout Creator , it make same changes in above registry keys, and it show up instantly as well.


2- Further investigation showed



There is a binary action dll or KbdMsi.dll (internal name) found with in Microsoft keyboard Layout installer, allocate/arrange keyboard layouts in case there is another custom layout installed within that language.


3- Now ?

Would Intlcfg Command-Line Options can be any help ?


Can we use this intlcfg operation or any other command in custom installer (Install Shield , Advance Installer etc.) to install custom keyboard layout , which add it in Input Language list automatically and enable in language bar ?



Edit:
----------------------------------------------------------------------------
Reply from Install Shield:

Looking at the MSI I generated in a test run with the MSKLC, I can tell you a couple things.

There are no registry entries in it; I suspect the Custom Action DLL creates these.
It deploys a single DLL and uses a system search to check for the DLL already being present in (or below?) the SystemFolder.
The MSI lacks a _Validation table, and this appears to be what is blocking InstallShield from opening it. If you have (or get) ORCA, this is easy to add by right clicking in the Tables list, selecting Add Table, and selecting the _Validation table checkbox. This will allow you to open it in InstallShield, but the behavior may be a little weird unless you also import real _Validation table rows.

It looks pretty easy to merge this into your installer, assuming a full blown keyboard layout is similar to this, especially with the help of something like ORCA to sidestep our dependency on the _Validation table.

it's hard to reverse engineer a custom action DLL. However you could probably copy it (save the DLL from the Binary table) and its sequencing into your project, assuming the licensing on MSKLC's output allows such.

------------------------------------------------------------------------------------


Hope someone would help.


n00b2012


Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

2 User(s) are reading this topic
0 members, 2 guests, 0 anonymous users



All trademarks mentioned on this page are the property of their respective owners
Copyright © 2001 - 2013 msfn.org
Privacy Policy