IMG Home PageIMG ProductsProduct DownloadsOrdering InformationTechnical Support and Frequently Asked QuestionsDeveloper's Corner and UtilitiesAbout IMG
CustomersIMG ResellersMedia InformationIMG Events / Trade ShowsUseful LinksIMG Contact InformationIMG Information / Policies
Translate



 
IMG's Blog - Recorded Keystrokes

IMG's Blog - Recorded Keystrokes

XP Embedded - a componentized operating system
written September 23, 2011 by Kermit Komm
Category: Development Tags: Build-A-Board, Macrobat, XP Embedded    #10
 
Click to view as Press Release
 
An interesting support item shows off the componentized aspect of XP Embedded and low level support of keystrokes within Macrobat (The Macro Batch Processor component of IMG's Build-A-Board). A large corporate customer rolling out a POS type system reported a software problem from within Windows caused by using the @ symbol via the Key Action. Here is the background:

In order to make the Key Action property within Build-A-Board as intuitive and user-friendly as possible, simply specifying the desired symbol is supported. For punctuation, such as the @ or % or # symbols, you can simply match the Key Label and Key Action, and everything works fine. However, when you get down to the actual emulation of the keystroke, you will find there is no single keystroke / keyboard scancode that can generate these symbols - a whole lot of action takes place within the keyboard driver to process and parse keyboard events so that the user-interface matches the physical keyboard, and indeed, you must be in the Shift state to generate certain characters, e.g. it really is Shift-2 at the keystroke level to generate the @ symbol. (Interested parties can read-up on TranslateMessage and the WM_CHAR message for the way some of this is handled within Windows). Flipping it around the other way, there are API calls such as VkKeyScan and MapVirtualKey that can query the underlying keyboard driver to take a character and figure out what keystrokes are required. And things work great - up until you build a version of the OS that doesn't have (or fully support) certain API calls - which is something you can do within a componentized operating system such as XP Embedded.

One solution (and probably the best) would be to rebuild the OS with the required components. As you get close to roll-out time, however, doing something that far back in the chain is generally looked at as a really bad choice. There is also the cause and effect aspect. The problem occurs when the user types the @ symbol keystroke on My-T-Soft, ergo the problem is with My-T-Soft - (regardless that My-T-Soft works fine everywhere else but on this specific version of XP Embedded).

So how to fix the problem? Sometimes it helps to redefine the problem, or run through the issue backwards, so here goes... Macrobat is the Key Action processing part of My-T-Soft, and it generates the virtual key events (and can also perform other actions). So when you pass it an @ symbol, it needs to figure out the keystrokes necessary to generate this via scancodes, and the Windows API MapVirtualKey can do so. The Shift state of these punctuation symbols was the common thread, so some combination of the XP Embedded OS, Macrobat, and the handling with the Windows API calls for these shifted punctuation characters was the problem. (In digging deeper, a whole separate sequence of code within Macrobat gets called to handle older DOS apps when a shifted character is revealed by MapVirtualKey, and various other Windows APIs are called to facilitate this management - our guess it isn't the keyboard APIs, but some of this support code - but without this code, other customers running this version would experience shift issues in DOS apps (which is still an issue for legacy systems - even this year (2011) we've had 1 customer want Windows 3.1 support for a DOS app (sometimes the real world is quite different than marketing hype might lead you to believe!))).

So could the whole situation simply be avoided? Yes - simply specify the Key Action to be the more detailed, totally un-user-friendly actual keystrokes - e.g. instead of using just the "@" symbol, specify "[Shift-Down]2[Shift-Up]". Now Macrobat will never branch into the problem area, and will operate as intended!

But is there any downside? In this situation, not really. The reason the @ symbol by itself is preferred is two-fold - easier for the human, and more portable. In this case, portability is not an issue - this is the OS, and as long as the user gets an @ symbol typed with they press the @ key, all is well. Since the keyboard layout is custom, and specific to this project (and could always be changed via Build-A-Board), changing a handful of keystrokes to be expanded and more specific is acceptable. It resolves the issue, and prevents potentially serious timetable issues if a more drastic fix were to be required. The flexibility of breaking apart the user interface and the Key Action is a crucial engineering aspect of the My-T-Soft® Build-A-Board System, and this is an example of the underlying design of the software. The use of a flexibile componentized OS resulted in a problem, but the flexibility of Build-A-Board quickly resolved the issue.

View Current
View Company News
View Technical
View All

Blog Information

My-T-Soft for Android
October 12, 2017
Kermit Komm
Category: Development
Tags: My-T-Soft; Android; Build-A-Board
 

The New IMG Logo!
June 6, 2017
Tracy Chang
Category: PR
Tags: new IMG Logo; marketing
 

My-T-Soft® for Linux 2.20 Release 5 now available
May 10, 2017
Kermit Komm
Category: Development
Tags: My-T-Soft; Build-A-Board; Linux; 32-bit; 64-bit;
 

Joystick-To-Mouse 2.80 Release 5 now available to address Windows updates
January 24, 2017
Kermit Komm
Category: Development
Tags: Joystick-To-Mouse; Text Scaling;
 

Hormel Foods Corporation renews Annual Maintenance for Enterprise License
November 15, 2016
Tracy Chang
Category: PR
Tags: Enterprise License; My-T-Soft
 

Understanding the KeyBoard File (.KBF file)
August 23, 2016
Kermit Komm
Category: Development
Tags: My-T-Soft; Keyboard File; Keyboard Data; Technical detail
 

IMG is pleased to announce that My-T-Soft® 1.90 is now available
May 26, 2016
Kermit Komm
Category: Development
Tags: My-T-Soft 1.90 Release
 

Understanding the differences between the IMG Personal License (Basic/Standard) and the IMG Professional License
May 25, 2016
Kermit Komm
Category: Development
Tags: IMG Personal License, IMG Professional License, Licensing
 

Keeping your Annual fees paid is a great idea (& can make employees happy)
May 25, 2016
Tracy Chang
Category: PR
Tags: Annual Maintenance; Annual Distribution; My-T-Soft
 

Hemlock Semiconductor purchases My-T-Soft site license for Windows 7
April 20, 2016
Tracy Chang
Category: PR
Tags: Site license; My-T-Soft
 

XPlore Technologies purchases My-T-Soft 1.90 license
April 18, 2016
Tracy Chang
Category: PR
Tags: My-T-Soft
 

Police Scotland upgrades to My-T-Soft 1.80
March 30, 2016
Tracy Chang
Category: PR
Tags: Upgrade; My-T-Soft
 

Cooper Tire & Rubber Company enters into IMG Technology License Agreement
January 18, 2016
Tracy Chang
Category: PR
Tags: Cooper Tire; IMG Technology License; My-T-Soft
 

JLT Mobile enters OEM Distribution agreement with IMG for My-T-Soft & access to custom layouts
September 1, 2015
Tracy Chang
Category: PR
Tags: OEM Distribution License; My-T-Soft
 

Global leader enters OEM Distribution Agreement with IMG for My-T-Soft 1.90
August 1, 2015
Tracy Chang
Category: PR
Tags: OEM Distribution License; My-T-Soft
 

Understanding User Interface Privilege Isolation (UIPI) with My-T-Soft
March 31, 2015
Kermit Komm
Category: Development
Tags: My-T-Soft, User Interface, UIPI, Privilege, Security
 

Reservoir Environmental standarizes on IMG's My-T-Touch Touchscreen User Interface
March 12, 2015
Jerry Hussong
Category: PR
Tags: Reservoir Environmental, My-T-Touch Site License
 

QBS Software Ltd, U.K., adds IMG's My-T-Soft family to its product line
February 15, 2015
Jerry Hussong
Category: PR
Tags: QBS Software Ltd, My-T-Touch
 

Key Recorder records and formats keystroke macros
February 11, 2015
Kermit Komm
Category: Development
Tags: My-T-Soft, Build-A-Board, Utility, macros, recorder
 

Anadarko Petroleum licenses My-T-Touch for their process control Industrial PCs
January 5, 2015
Jerry Hussong
Category: PR
Tags: Anadarko Petroleum, My-T-Touch
 

Mobis North America purchases My-T-Touch Enterprise License for use in factory Industrial PCs
December 10, 2014
Jerry Hussong
Category: PR
Tags: Mobis North America, My-T-Touch
 

Group Limagrain, France purchases Enterprise License for My-T-Soft custom keypad user interface
December 5, 2014
Jerry Hussong
Category: PR
Tags: Group LimaGrain, My-T-Soft, Build-A-Board
 

THAAD Missile Systems delivers new systems integrating IMG's My-T-Soft Linux User Interface
December 5, 2014
Jerry Hussong
Category: PR
Tags: THAAD Missile, Lockheed Martin, My-T-Soft
 

My-T-Soft Basic 2.30 is now available!
November 6, 2014
Kermit Komm
Category: Development
Tags: My-T-Soft Basic;Build-A-Board;Board Browser
 

National Beverage chooses IMG's My-T-Soft Build-A-Board User Interface for new mobile tablets
September 1, 2014
Jerry Hussong
Category: PR
Tags: National Beverage, My-T-Soft, Build-A-Board, Motion Computing
 

Sargento Cheese upgrades to My-T-Soft TS User Interface for Windows Terminal Servers
August 21, 2014
Jerry Hussong
Category: PR
Tags: Sargento Cheese, My-T-Soft TS Terminal Services
 

US Navy chooses IMG's My-T-Soft user interface for next generation Ship Control Systems
August 1, 2014
Jerry Hussong
Category: PR
Tags: US Navy, My-T-Soft
 

Goodwill of Arizona continues its rollout of IMG's My-T-Soft user interface in its thrift stores
July 1, 2014
Jerry Hussong
Category: PR
Tags: Goodwill of Arizona, My-T-Soft
 

Caps Lock - who decides?
June 6, 2014
Kermit Komm
Category: Development
Tags: Caps Lock; My-T-Soft; IgnoreSystemCapsLock
 

Berings Bridal Registry stores integrate My-T-SoftCE user interface on mobile store scanner systems
June 1, 2014
Jerry Hussong
Category: PR
Tags: Berings, My-T-Soft, Build-A-Board
 

Fresh Direct expands its My-T-Soft investment for new Windows 7 systems
February 26, 2014
Jerry Hussong
Category: PR
Tags: Fresh Direct, My-T-Soft, Windows 7
 

IMG announces new Individual Personal License option
February 21, 2014
Jerry Hussong
Category: PR
Tags: IMG's Individual Personal License
 

System Design Considerations: The on-screen keyboard - User Control, Application Control, or System Control
January 9, 2014
Kermit Komm
Category: Development
Tags: system design; on-screen keyboard; user; application
 

Alcon Labs adds My-T-Soft Onscreen Keyboard utilities to its Ireland facilities
October 15, 2013
Jerry Hussong
Category: PR
Tags: Alcon Labs, My-T-Soft
 

Southwire enhances its Terminal Server user interface with My-T-Soft
September 15, 2013
Jerry Hussong
Category: PR
Tags: Southwire Company, My-T-Soft Terminal Server
 

THAAD Missile Systems integrates My-T-Soft Build-A-Board User Interface
September 1, 2013
Jerry Hussong
Category: PR
Tags: THAAD Missile, Lockheed Martin, My-T-Soft
 

H.J. Heinz rolls out multi-plant My-T-Soft Enterprise License
July 15, 2013
J Hussong
Category: PR
Tags: H.J. Heinz, My-T-Soft
 

Solutions By Design to use IMG's My-T-Soft Build-A-Board System in Kiosk Projects
June 1, 2013
J Hussong
Category: PR
Tags: Solutions By Design, Kiosks, My-T-Soft Build-A-Board
 

Pfizer Pharmaceutical installs My-T-Soft software in Puerto Rico facility
May 15, 2013
J Hussong
Category: PR
Tags: Pfizer, My-T-Soft
 

The 1.79/1.80 Releases
April 30, 2013
Kermit Komm
Category: Development
Tags: My-T-Soft, 1.79, 1.80, Windows 8, Windows Server 2012
 

Robert Mann Packaging standardizes on IMG's My-T-Soft on screen keyboard user interface
March 25, 2013
Jerry Hussong
Category: PR
Tags: Robert Mann Packaging, My-T-Soft
 

Health and Social Care of Northern Ireland standardizes on IMG's My-T-Soft on screen keyboard user interface
March 25, 2013
Jerry Hussong
Category: PR
Tags: My-T-Soft, Health and Social Care of Northern Ireland
 

Mead Johson Nutritionals choose's IMG's My-T-Soft on screen keyboard user interface
March 20, 2013
Jerry Hussong
Category: PR
Tags: My-T-Soft, Mead Johnson Nutritionals
 

Domtar Paper standardizes on IMG's My-T-Soft on screen keyboard user interface
February 25, 2013
Jerry Hussong
Category: PR
Tags: Domtar Paper, My-T-Soft
 

Northport Health Services standardizes on IMG's My-T-Soft Terminal Server onscreen keyboard user interfaces
January 29, 2013
Jerry Hussong
Category: PR
Tags: Northport Health Services, My-T-Soft
 

Target Stores standardize on IMG's My-T-Soft Build-A-Board on screen keyboard user interface system
January 24, 2013
Jerry Hussong
Category: PR
Tags: Target Stores, My-T-Soft, Build-A-Board on screen keyboard user interface
 

Biery Cheese standardizes on IMG's My-T-Touch onscreen keyboard user interfaces
January 13, 2013
Jerry Hussong
Category: PR
Tags: Biery Cheese, My-T-Touch
 

Germany's Bundesamt fur Informationsmgmnt standardizes on IMG's My-T-Soft onscreen keyboard user interfaces
September 25, 2012
Jerry Hussong
Category: PR
Tags: Germany Bundesamt fur Informationsmgmnt, My-T-Soft
 

Belfast Health Services standardizes on IMG's My-T-Soft onscreen keyboard user interfaces
September 19, 2012
Jerry Hussong
Category: PR
Tags: Belfast Royal Hostpital, Belfast Health, My-T-Soft
 

Augusta Nitrogen div of Potash Corp standardizes on My-T-Soft Terminal Services
August 25, 2012
Jerry Hussong
Category: PR
Tags: Augusta Nitrogen My-T-Soft Terminal Services
 

York Container standardizes on IMG's My-T-Soft Build-A-Board System
August 15, 2012
Jerry Hussong
Category: PR
Tags: York Container My-T-Soft Build-A-Board
 

Time display adds new capabilities to Build-A-Board Windows run-time
August 1, 2012
Kermit Komm
Category: Development
Tags: Build-A-Board, Clock display, Time Display, Date Display, Windows run-time
 

IMG's The Magnifier software available on Amazon.com
July 25, 2012
Jerry Hussong
Category: PR
Tags: The Magnifier, IMG, Amazon
 

Sterilite Corp standardizes on IMG's My-T-Soft Build-A-Board System
July 15, 2012
Jerry Hussong
Category: PR
Tags: Sterilite My-T-Soft Build-A-Board
 

Washington United Terminals standardizes on IMG's My-T-Soft® Build-A-Board On screen Keyboard User Interface
April 30, 2012
Jerry Hussong
Category: PR
Tags: WUT, Build-A-Board, My-T-Soft, Ryzex Group, IMG
 

Waitrose Supermarkets UK Standardize on My-T-Soft Build-A-Board System
April 15, 2012
Jerry Hussong
Category: PR
Tags: Waitrose Supermarkets UK My-T-Soft Build-A-Board
 

Hormel licenses IMG's My-T-Soft® On screen Keyboard User Interface
April 9, 2012
Jerry Hussong
Category: PR
Tags: Hormel, Roper Mobile, My-T-Soft, on screen keyboard
 

Monsanto Seed Standardizes on My-T-Touch Onscreen User Interface
February 1, 2012
Jerry Hussong
Category: PR
Tags: Monsanto Seed, My-T-Touch
 

Clever Devices to integrate IMG's My-T-Soft®Build-A-Board onscreen keyboards into Busware
January 24, 2012
Jerry Hussong
Category: PR
Tags: Clever Devices, Busware, Build-A-Board, My-T-Soft
 

German Bundeswehr standardizes on IMG's My-T-Soft Onscreen Keyboard Utilites
January 1, 2012
Jerry Hussong
Category: PR
Tags: Bundeswehr, My-T-Soft, onscreen keyboard
 

Developer's kit utilities for Build-A-Board Linux Targets
January 23, 2012
Kermit Komm
Category: Development
Tags: Linux, Build-A-Board, My-T-Soft Developer's Kit, tools, utilities
 

Browser based app with side layouts and bottom based keyboard
November 18, 2011
Kermit Komm
Category: Development
Tags: AppBar, MTSAppBar, Dock, MTSDock
 

Rugged Tablet Mfr. adds IMG's low vision The Magnifier to its offerings
October 18, 2011
Jerry Hussong
Category: PR
Tags: The Magnifier, IMG, Motion Computing, Rugged Tablet
 

XP Embedded - a componentized operating system
September 23, 2011
Kermit Komm
Category: Development
Tags: Build-A-Board, Macrobat, XP Embedded
 

Chesapeake Public Schools standardize on IMG's The Magnifier
September 23, 2011
J Hussong
Category: PR
Tags: Chesapeake Public Schools, The Magnifier, IMG
 

H.J. Heinz continues roll-out of IMG's My-T-Soft on-screen keyboard utilities
September 15, 2011
Jerry Hussong
Category: PR
Tags: H.J. Heinz, My-T-Soft, on-screen keyboard
 

Enabling tools... Real world story of IMG's technology
September 9, 2011
Kermit Komm
Category: Development
Tags: OnScreen, WordComplete, CrossScanner, Assistive Technology
 

My-T-Soft® 1.79 to incorporate new Touch Panel
August 17, 2011
Kermit Komm
Category: Development
Tags: multitouch, gestures, flicks, touch panel
 

CSX licenses IMG's My-T-Soft® On screen Keyboard Utilities company wide
June 10, 2011
Jerry Hussong
Category: PR
Tags: CSX, My-T-Soft, on screen keyboard, virtual keyboard
 

British Columbia Ambulance Services standardizes on IMG's My-T-Soft® Build-A-Board On screen Keyboard User Interface
June 3, 2011
Jerry Hussong
Category: PR
Tags: BC Ambulance, on screen keyboard, virtual keyboard
 

The Magnifier - The First Truly Affordable Full Screen Computer Software Magnifier
January 6, 2011
Jerry Hussong
Category: PR
Tags: The Magnifier, Screen Magnifier, Computer Magnifier
 

ELO Touchsystems renews IMG's My-T-Touch® On screen Keyboard Utilities for All-In-One PC
January 1, 2011
Jerry Hussong
Category: PR
Tags: ELO Touchsystems, My-T-Touch, onscreen keyboard, on screen keyboard, all-in-one pc
 

SDK Developers Kit Update
December 15, 2010
Kermit Komm
Category: Development
Tags: My-T-Soft, Build-A-Board, SDK, onscreen keyboard, virtual keyboard
 

 
 

IMG Logo
  • IMG's Blog covers company news, development news, and other interesting items.
  • IMG is dedicated to innovative ideas and turning those ideas into real-world solutions that provide value, increase productivity, and enhance technology.

Send IMG a note via e-mail...
IMG Home PageIMG ProductsProduct DownloadsOrdering InformationTechnical Support and Frequently Asked QuestionsDeveloper's Corner and UtilitiesAbout IMG
CustomersIMG ResellersMedia InformationIMG Events / Trade ShowsUseful LinksIMG Contact InformationIMG Information / Policies