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

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

IMG is pleased to present My-T-Soft for Android, the newest platform for IMG's Build-A-Board keyboard designer. Working in conjunction with a large OEM customer and identifying shortcomings in available Android keyboards, along with a list of desired capabilities, IMG has developed, and now publicly released the Android target for custom Build-A-Board layouts.

Key features include the ability to customize layouts with IMG's Build-A-Board, tie layouts together into sets, position layouts anywhere on the screen, and customize key actions with keystroke macros and internal commands (Launch Apps, Open New Keyboard File, etc.). The software installs as another input method, and can be swapped in & out with other methods. My-T-Soft for Android can tie into accounts at Build-A-Board.com, so favorite boards can be quickly brought onto any device, and provides access to the ever growing online database of onscreen keyboard layouts. Because layouts are customizable, key sizes are flexible, and both text and images can be used on keys, the possibilities for optimizing the user input interface are endless. In order to address different devices and different screen resolutions and the fact that layouts may not be optimized for a particular device, various scaling options and board positioning options were added. While it is recommended that boards be optimized for devices, the reality is that boards may be dropped onto a device from who knows where, so the ability to scale and fit boards is a useful capability.

In addition to flexible positioning from within Build-A-Board, and various device & board overrides, there is also an optional ability to drag & drop a layout where desired, and the new location can be saved (or not). Basics such as configurable shift-lock/indicators, and key click sounds are included, along with an optional revert to default layout on long key press. The key zoom or preview capability is included (separate magnified key being pressed) and also configurable to above/below/left/right, as now that layouts can be anywhere, the actual direction of where best to see the magnified key is no longer just in one place.

There are also several appearance options and overrides that provide additional capabilities. The keyboard background can come from the KeyBoard File (KBF / Board data), can be made black, white, or clear (glass). The clear option can be used to create a floating key effect, and also helpful if transparency is being used. The actual key image (or look & feel of the keys) has many user selectable options which can override keys that have the HiRes key type. There is also full support for the Regular keys in terms of face/text/highlight/shadow options, and keys can be mixed on boards (this is a per key setting). The actual Key Text color can also be selected from the KBF / Board setting to Black or White. Finally, the ability to select a transparency level is done via a slide bar where the user can dial up and down how opaque or how transparent you want the boards to be. This enables a full screen layout where you can see through and type using the whole screen, while still seeing your text input. This helps with various devices, and can solve input/fat-finger issues. Note that a board can be optimized to leave space in the keys where the actual text will go, so keys will not occlude the underlying text input field.

My-T-Soft for Android is part of the IMG Build-A-Board system as a new target, which is added to existing targets for Windows, Windows CE, Linux, and Max OS X, all with access to the growing online database of layouts. Basic licensing is available per device, and as a Platform in the Build-A-Board system with options for site, company, and enterprise licensing.

Because of the flexibility of being able to design the keyboard, or choose from an existing layout and modify as needed, the application is only limited by your needs and imagination. Now Android users can Get the My-T-Soft Advantage! What you want, when you want, where you want it! Improves productivity, saves time, reduces errors, and lowers training costs. Android users - Welcome to My-T-Soft!

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

A maintenance update to My-T-Soft for the Linux platform (Build-A-Board run-time for Linux 32-bit and 64-bit) is now available and will be rolled into the next release of Build-A-Board. A large government contractor ran into issues while testing for an upcoming release, and although the specific issue could not be replicated in house, a code review and other stress tests found a mechanism where unsupported characters could be introduced into a keystroke macro, and could cause the macrobat (Macro Batch processor) process to terminate (which then caused typing problems, and other operational issues). By working with the customer's results and in-house testing, a more robust error checking and invalid character stripping was added, producing the update. From the code review & inspection of the actual C library function call used as part of the interprocess communication, multiple "post" events before macrobat processed the queue could result in a line-feed character as a separator, which then caused the issue (which was created in-house by using typefile/playmacro with various files/input data). As part of the review, it was determined that timing issues due to system speed, other processes running, input caching, or possibly other system delays could result in the interprocess queue growing without immediate macrobat processing, and then (possibly system / version related) the line-feed character would have been introduced (which caused the improper handling in the previous version of macrobat). The update was tested extensively by the customer and IMG, and after passing all tests, the update release was made available. Better support for the Allow User to Move / Access Menu options set in Build-A-Board was also added. The update is available here: My-T-Soft for Linux

The My-T-Soft® and Build-A-Board software provides customizable on-screen keyboard, buttons, and panels for use across numerous platforms, enabling a consistent user interface along with more control, security, and flexibility than system based on-screen keyboards.

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

A relatively minor update to the Windows 10/8.1/8 version of Joystick-To-Mouse is now available, tagged as Version 2.80 Release 5. Changes were made to the Joystick-To-Mouse executables, along with date and release text updates. This update is an example of the maintenance that is required of software - here is the background and details:
A new customer was using Joystick-To-Mouse on their Home Theater PC, using an Xbox 360 wireless controller, but ran into an issue when going into Start->Settings->System->Display->Change text size (or Display | Advanced Settings, set Custom Text size) to make the text easier to see on their flat screen TV. Basically whenever the setting was something other than 100%, the mouse cursor ran to the bottom-right of the screen, and made the software unusable. A Tech Support case was created, and it bubbled up to the development staff, since there was no quick solution available. The first step in resolving issues is to be able to duplicate the problem, and this was quickly done, but trying to understand why the DPI change was the cause of the problem seemed odd, as the software already had a SetProcessDPIAware call that was added back in the updates for Windows 8. DPI stands for Dots Per Inch, which is used in Windows to map things on to the display. In digging into the code and documentation, it turns out the preferred approach for a process is to use now is the program manifest vs. the API call, and it must be noted that is not uncommon for the preferred solution to change when dealing with Windows API based software. In testing and working with rebuilt/remanifested executables, it was discovered that the existing software did work just fine with custom text sizes in Windows 8, but not in Windows 8.1 and Windows 10. Also it should be noted that testing in a normal system would never expose this issue - only doing custom text sizing would make the problem occur. So the only required change was to remove the deprecated SetProcessDPIAware call, and update the manifests for the required executable files. Then comes the testing, and rolling into an updated release.

In an ideal world, with infinite resources, complete regression testing would have caught this issue. But customers simply won't pay thousands of dollars for a little utility program. Plus why should a problem that was found, and fixed, and in the software need testing on what was a mostly a cosmetic update to Windows 8? It turns out the API used had some issues, so it was deprecated (most likely around the Windows 8.1 release), but the thought that every Windows API used in a Windows software program needs to be reviewed for every Windows release just to see if there have been changes makes little business sense, so customers need to be understanding of the realities of modern software. Maybe someday non-IMG software will be engineered and maintained in a disciplined manner, but that is not the world we live in today.

Joystick-To-Mouse continues to be in demand, and provides a unique capability that IMG updates and maintains. Now that only secure, code-signed programs can access the user interface capabilities needed to perform the function that Joystick-To-Mouse provides, it may be a good idea to "Tell a Friend", and let your gamer friends know that they can "play" their internet browser, or "drive" Windows, or use Windows on a large screen TV with large text! Just as many eyes make bugs shallow, many customers make resources available for more development, more testing, and more features...

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

With more & more new users, many of whom are creating layouts with My-T-Soft® Build-A-Board, occassionally there are questions regarding the keyboard layout files, their naming conventions, and what they are all about. In this entry, we will cover some history, some relevant details & distinctions, and a look into the future.

In the before time, the original release of My-T-Mouse utilized 3 main types of configuration files - files with .KBF, .KMF and .INI extensions. The keyboard data file was named with a .KBF extension for KeyBoard File. This data file contained panel rectangles, key rectangles, and window configuration information. The actual key labels and key actions were contained in the .KMF files - Keyboard Macro Files, which lended itself well to international / different keyboard layouts (same physical layout, different labels/key actions). User configuration information was in the initialization file, or MYTMOUSE.INI. Because certain data spanned the user configuration and had an effect on the keyboard display (i.e. size, visible keys, panels open, etc.), the intertwined nature of the .INI and .KBF file became a factor when working with the 1.xx software. Because of this, for best results when manipulating the keyboard software, using BOTH the .INI and .KBF files as a matched pair was recommended when externally controlling layout changes.

Due to various user interface conventions and customer requests, along with design considerations, the .KBF file became more & more flexible, and could be manipulated in various ways. For example, when the keyboard software is opened, it reads in the data file (.KBF file), along with user options (.INI file) and then configures things based on these settings (the KMF file in user relied on the Keyboard= setting in the .INI file). Since the user could have changed the .INI file via the separate Setup tool (or programmatically via Developer Kit tools), settings such as layout size might need to reconfigure the data read in from the current/saved .KBF file. The general approach was that user settings in the .INI overruled the .KBF file. However, due to design decisions and the possibility of impossible manipulations because of certain internal constraints, it became necessary to require that both the .INI and .KBF be a matched pair when being used to create multiple configurations for "on-the-fly" layout changes.

When the 2.xx software was designed, keeping the .KBF as the single / only data file was deemed the best solution. Having multiple files that needed to be managed to ensure proper display/operation is not keeping in line with making things as straightforward and as easy as possible for users and developers, so the single .KBF file per layout is how things work with the 2.xx software. Because there are many examples of "user" or "field" settings that need to be part of the keyboard layout data, an embedded MYTSOFT.INI has been incorporated into the 2.20 KBF data structure. This allows tools such as KBFEdit to open and modify these user based settings in the field by the user, allowing certain customizations for operational aspects and user settings.

In most cases, the single .KBF as data for a keyboard layout, with incorporated operational aspects works very well - in the spectrum of ideal to acceptable. However, there are situations where there are issues. Cases where the user should not be able to make modifications, or where there are many layouts and user settings should be "per user" can be accommodated, but not as easily as program/user options separated from the layout data. But before we touch upon future enhancements, let's review how the current Build-A-Board system works and creates .KBF files.

The Build-A-Board Builder creates its own sub-folder in the Public Documents location, and under the Build-A-Board folder, there are 3 folders: SOURCE, TARGET, BOARDS. Under the SOURCE and TARGET folders, there are Project Name folders. Let's use an example, and walk through the general steps. If you create a project called MyAwesomeLayout, you will get a sub-folder in SOURCE\MyAwesomeLayout. In that folder you will find all the source files that contain the information displayed in the Layout Builder - window size, keys, key sizes, key labels, key actions, etc., etc. When you close a project in the Builder, all the text and data files will be zipped up (i.e. compressed) into a single Project source file, e.g. SOURCE\MyAwesomeLayout\MyAwesomeLayout.zip.

When you open a closed project, it will be unzipped, and all the data from the project source files will be read in to the Builder, and the customizable layout will be presented, where properties, actions, etc. can all be modified. Then you can select a Run-Time Target - Linux or Windows, ANSI or UNICODE, 32-bit or 64-bit, and various other platforms & combinations of run-time targets. When you Build the project, the Project Name folder in the TARGET folder will be created, along with a Test sub-folder and the target folder, e.g. MSWIN32 for Windows 32-bit targets. So the run-time files for Win32 would be in TARGET\MyAwesomeLayout\MSWIN32. This folder could be copied to a Win32 system, and the MYTSOFT.exe can be run, showing the MyAwesomeLayout layout. In the TARGET\MyAwesomeLayout there are 2 .KBF files - MyAwesomeLayout.KBF and KEYBOARD.KBF. These are also in the Test folder (used for testing/running on the system running Build-A-Board), and in any run-time target folders. Also, the MyAwesomeLayout.KBF is copied to the BOARDS folder - so when the Board select option is used in My-T-Soft, it will appear as a board option to select.

The reason there are 2 .KBF files is that by default, when My-T-Soft is run, it will look for and run KEYBOARD.KBF - so each project always copies the Project Name .KBF file to KEYBOARD.KBF. The reason the project name is used (e.g. MyAwesomeLayout.KBF) is for dealing with many different projects, so each unique project has a unique .KBF file name.

So what data does a 2.xx .KBF file contain? For those that are interested, it is pretty easy to review the text files in the SOURCE folder for an open project and get a general idea. These are the main aspects of a layout file: Window information, Panel information, key positions, and then key information. Then there is supporting data - key images, base & international macro files (.KMF data), state data, image data, platform license data, and the MYTSOFT.INI. As much as possible, the user interface and operational aspects are controlled by the .KBF file / layout data.

So what does the future hold? There are actually many different items under development and slated for future enhancement regarding the .KBF KeyBoard File. As a single data file that defines the keyboard, the 2.xx approach has been deemed a success. To accommodate user specific options, an override approach has been defined as the best/most flexible. The way this will be implemented will be a user editable MYTSOFT.INI which can contain a subset of all possible entries, and those that are in the MYTSOFT.INI in the user application data/configuration area will be used as the actual setting, potentially overriding any matching setting in the .KBF file. Note that these user settings will apply to all .KBF files run, so any user settings set in this manner will apply to all layouts run. This approach will allow multiple users on a system to have different operational settings, all while using the same .KBF. If there are not user specific settings, then the settings in the .KBF will be used.

The general approach is for .KBF files to be layout files that can be used across multiple platforms. Because of platform differences, certain aspects of the layout may be interpreted differently based on the platform, screen resolution, system capabilities, etc. How these will continue to evolve depends on actual use cases and customer requirements. Although not yet formalized, the 3.xx release anticipates merging all capabilities of 1.xx and 2.xx software, along with additional capabilities incorporated based on real world customer input. As the original .KBF implementation passes 25 years of use, a nod can be made to its original design & flexibility, and a hearty thank you to the customers that have used and continue to implement the software to address and solve real world needs.

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

The My-T-Soft® 1.90 release is an important milestone in the life of the product - it merges both the established 1.xx software with the new Build-A-Board based software, supports multiple versions of Windows that IMG's customers are using (Windows 7, 8, 8.1 & Windows 10), has both 32-bit and 64-bit versions, ties into an automated update system, ties into the online database of layouts, and includes all requested features & capabilities.

My-T-Soft traces its lineage back to the original My-T-Mouse release of 1993, and continues to be developed and improved, with added features & capabilities requested by customers and users. The 1.90 is a major step because it incorporates the 1.xx branch of the software and the 2.xx next generation branch (see Build-A-Board and My-T-Soft Basic) that easily blends custom layouts with the preset layouts that are part of the 1.xx software.

Where previous versions supported the 2.10 style layouts from Build-A-Board, the new release of My-T-Soft 1.90 now supports the current 2.20 style layouts, which feature full Unicode support, key style themes, external DLL integration options, and optional layout selection.

The license manager also includes support for new Build-A-Board.com Account based licenses. Where a IMG Personal License-Basic is sufficient for a My-T-Soft Basic install, the IMG Personal License-Standard is available for personal use of the full My-T-Soft 1.90.

For those technically inclined, here are key items that this release incorporates.

  • All code has been moved into the same Visual Studio environment for easy targeting of 32-bit and 64-bit builds for Windows targets.
  • Embedded manifests has support for Windows 7, Windows 8, Windows 8.1 and Windows 10
  • Build-A-Board 2.xx run-time software is same as My-T-Soft Basic release, and supports layouts in the Public Documents Build-A-Board Boards folder, along with ability to tie to Build-A-Board.com accounts and favorite boards
  • The IMG Smart Download software is 32-bit (so it can run on both 32-bit and 64-bit windows), but can sense a 64-bit system, and will pull down and start the installation of the 64-bit My-T-Soft build.
The included Build-A-Board run-time My-T-Soft 2.30 software includes these features:
  • Key Action/Label abstraction allows operation with version 1.xx Keyboard Macro Files - allows for quick change of language/layout/operation
  • Key image selection - layout appearance can be changed at will within Build-A-Board
  • Region (display) support - arbitrary shapes possible, along with rounded edges or split layouts
  • Integrated board selection tool
  • Get My Boards command and selection option
  • Embedded Macro support
  • KBF Editor (KeyBoard File) included for field editable options
  • TypeFile tool included for external macro support
  • Arbitrary Startup / Shutdown executable support
  • Cursor / Move / Menu options (per board)
  • Key Zoom (Key Echo feedback window) options
  • Parallax settings
  • Key Block timeout settings
  • Support for external DLL display

As a release for existing customers, this provides a bridge between the older software and the next generation. With the full capabilities of both code bases, and multiple Windows versions support, it makes sense as an upgrade, or the next step for new systems. By also bringing in all the capabilities of the Build-A-Board run-time, it adds a great deal of functionality within the main product, vs. the choice between 2 possible solutions, as was previously the case.

For developers and integrators, it provides a wealth of possible solutions to the user interface needs of sophisticated systems. By integrating a flexible on-screen keyboard solution (not tied into the fixed/limited options of the Windows based option), a comprehensive, secure user interface can be built.

For those not familiar with the depth & power of My-T-Soft, this provides a comprehensive solution all in one package.

To review, work with, or check out the My-T-Soft 1.90 release, you can download it here

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

Innovation Management Group, Inc. has always released high-quality software that can run for years without a need for updates. IMG uses license restrictions to balance business requirements, maintain professional standards, and to ensure a viable financial model for its employees and customers. IMG has regularly changed licensing options to meet customer needs and to achieve the best balance between license restrictions and ease of use/deployment. There are numerous license options available, including negotiated license agreements, software escrow, and technology transfers. For most individuals and many companies, this is much too involved, so a simple mechanism to generate revenue & provide access to IMG's software has resulted in the IMG Personal License and the IMG Professional License. This is a slightly technical overview that outlines the key distinctions between these licenses.

Sometime around 2012, IMG started working towards a more technology oriented approach vs. a product oriented approach. Although we still deliver our software in a product oriented way, we also are working towards a more straightforward relationship with our customers, not focusing on the specific product or products in use, but more on the customer relationship and keeping things as simple as possible for all customers, whether they are an individual having fun with Joystick-To-Mouse, or a global enterprise deploying custom My-T-Soft layouts throught the world.

The IMG Personal License (IPL) options, along with the IMG Professional License, utilize a Build-A-Board.com online account so users can manage their account & licenses, and can access the online database of keyboard layouts. As of 2016, the IMG Personal License-Basic includes access to My-T-Soft Basic, Joystick-To-Mouse, SmartClick, TouchRight Utilities, and WordComplete. The IMG Personal License-Standard includes access to all IPL-Basic software and also includes access to My-T-Soft 1.90. These personal licenses are meant for individuals who want access to the software, but do not want to pay the full license amount for support, maintenance, etc. These licenses require system access to the internet to retrieve system-tied licenses, and do not qualify for support beyond what is available within the software, tech support knowledgebase, and other online resources.

The IMG Professional License adds the ability to license systems not connected to the internet, and qualifies for technical and programming support along with maintenance & upgrade options.

For individuals using the IMG Personal License, once a system is licensed, the license is perpetual for that system, and this system does not need the internet or a valid Build-A-Board.com account to remain licensed. However, if there is a major operating system re-install, or system restore, or other major system event that invalidates the license, it would need the internet and access a valid Build-A-Board.com account to re-license. For practical purposes, once a system is licensed, the license lasts the life of the system. Note that for individuals who constantly rebuild systems, or swap hard drives, or are developers, the IMG Personal License is probably not the best choice.

Key licensing aspects to understand about the IMG Personal License and the relationship to the Build-A-Board.com account:

  • A valid (active/non-expired) Build-A-Board.com account is required to license a system
  • Build-A-Board.com accounts are valid for 1 year and can be renewed or reactivated if expired
  • a system must have internet access to apply for and retrieve its license
  • all licensing actions must be from the system being licensed (you cannot use a different system - if you do, you will license that system)
  • Once a license is used on a system, it cannot be removed or transferred (the system is licensed for the life of the system)
  • 3 system activations (licenses) are included (e.g. 1 laptop/1 desktop/1 mobile)
  • Additional IPL purchases will add licenses, and extend the expiration date
  • the license uses a unique system ID / system registry entry to identify the system, and the license file generated and retrieved on to the system must match this system ID. Moving the license file to another system will not match and the license will be invalid, and a major system registry change (i.e. rebuilt system) will also fail to license

The IMG Professional License adds a few additional capabilities:

  • Licenses can be granted to any system (with or without internet access) using the 16 character System ID that is used to generate a License Key/Serial Number unlock pair from within the License Manager tab in a Build-A-Board.com account
  • Qualifies for full technical and/or programming support
  • account can be renewed at maintenance rates (15%)

As always, if there are specific circumstances that are not correctly managed by these license approaches, please contact IMG Customer Service to assist and resolve any issues.

By integrating the software with an personalized internet account, IMG's user interface software along with customized layouts can be quickly retrieved on different devices. Expanding on what the band The Fixx said in their song, "Less Cities, More Moving People" we are moving towards a world with More People, and even More Connected Devices. Creating a platform to quickly and easily access the tools & user interface software necessary to be productive is one of the underlying reasons for building this approach. When a customer gets a new device or moves to a different one, rather than downloading/installing/configuring software, someone can log on and then quickly & easily download their software & configuration. By having a centralized / personalized account, this becomes a breeze. For companies utilizing operator panels or customized interface options, when a new system needs to be deployed, this internet account becomes the ideal way to add IMG software to a unit.

The IMG Personal and IMG Professional licenses tied to a Build-A-Board.com account provides everything necessary for customers to manage their IMG software, along with access to the growing online database of layouts and ways to personalize & customize their configuration.

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

Luckily there have not been too many issues that pop up regarding the UIPI approach used in Windows since the release of Windows Vista. Many issues can be resolved in a satisfactory way by turning off User Account Control (UAC). In cases where the security or policy requires UAC to remain on, the next simplest solution is to run My-T-Soft as an Administrator. Since version 1.79, all possible executable options are included with the release software - executables built with the manifest set with asInvoker, highestAvailable, and requireAdministrator. My-T-Soft ships with the asInvoker setting, which is the most secure and the recommended option. However, in a secure environment, any elevated process will not be able to receive input when UIPI prevents My-T-Soft from sending input (i.e. keystrokes) due to privilege isolation. The following explains what is going on in the context of running My-T-Soft when a UIPI situation arises preventing normal / expected operation of My-T-Soft.

Typically, a user runs applications/programs and My-T-Soft in the security context of themselves as a logged on user, and everything works as expected. However, executables can include a manifest to tell the operating system how to treat the security and access privileges when running the program. For example, Setup/installation programs typically raise the privilege level to Administrator so that the operations required will run without further warnings. When User Account Control is on, the user will be presented with a dialog requiring the user to acknowledge or enter a password to continue. If a security application or other tool is run in the context of an Administrator, the privilege isolation prevents processes running in a different security context (i.e. the limited, logged on user) from accessing or interacting with the raised privileged Administrator application. What this means in practice, is that My-T-Soft will not be able to type into an Admin privileged executable when My-T-Soft is being run in the context of the limited user. And this can cause confusion, because Windows does not make any distinction once the application is run & the dialog/password acknowledged. To the average Windows user, who may get used to the occassional security dialog, there will be no connection between the fact that they raised the privilege level of an application and the fact that they cannot interact with it using My-T-Soft like other normal privileged applications.

In some cases, users may wish to run the highestAvailable or requireAdministrator tagged My-T-Soft executables, so the privilege level will be raised when My-T-Soft is run, and operation during the logged on session will be as the user desires. This can be done by modifying the startup shortcut, or simply creating a new shortcut, or renaming the executable, e.g. rename MYTSOFT.highestAvailable.exe to MYTSOFT.exe. In cases where My-T-Soft is running in an elevated privilege state, there can be issues with Developer's Kit utilities - typically when these are run, they are run in the context of the logged on user, and have that privilege level. However, if My-T-Soft is elevated, then it may not be visible/accessible by the Developer's Kit utilities. As a real world example, an OEM uses the elevated executable, and their customer was moving from a workstation to a remote session with a limited user, and then could not get the utilities to operate. After outlining the UIPI issues (which seemed foreign and made no sense to the customer at the beginning of the process), explaining that the limited user was running the Developer's Kit utilities and could not interact with the elevated My-T-Soft executable helped, but it took a detailed walk through from the point of view of security, privileges, and emphasizing that a lower level process could not interact with the Administrator process (simply not allowed) to connect the dots. Luckily in this case, running My-T-Soft as the lower level/logged on user resolved the problem.

As detailed, current releases provide all options to help resolve different situations that can arise using My-T-Soft, but understanding the User Interface Privilege Isolation is important due to the fact that My-T-Soft is a user interface tool.

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

As more and more end-users work with My-T-Soft vs. commercial developers, different needs arise and some good suggestions are being made. In order to provide a simple way to record keystroke macros for My-T-Soft 1.xx Macro Panels or Build-A-Board Key Actions, a new Keystroke macro Recorder is now available and will roll into updates as things move forward.

You can download KeyRecorder here. This is a simple utility that uses either the Pause key or the Scroll Lock key to toggle recording keystroke macros with correct syntax markup to drop directly into any place a macro can be saved. My-T-Soft or the physical keyboard can be used during the recording, so the appropriate sequence/steps can be performed, and then by stopping the recording, the formatted keystroke macro is placed on the clipboard! Then it can be pasted into the appropriate place, or Notepad can be used to collect a whole sequence of keystroke macros (Be sure to paste/save the macro before recording another one - a new recording overwrites the clipboard)

There are 2 executables - the regular KeyRecord with runs at the same privilege level as the current user, and an Administrator executable that runs at the highest privilege level. For further details, there are additional notes at the tech item QU1115120805 (link above).

Archives

Archive Year: 2014

Archive Year: 2013

Archive Year: 2012

Archive Year: 2011

Archive Year: 2010

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
 


Archives

Archive Year: 2014

Archive Year: 2013

Archive Year: 2012

Archive Year: 2011

Archive Year: 2010

 
 

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