Browse Prior Art Database

Dynamic Management of Resources for Different National Languages

IP.com Disclosure Number: IPCOM000118956D
Original Publication Date: 1997-Sep-01
Included in the Prior Art Database: 2005-Apr-01
Document File: 4 page(s) / 108K

Publishing Venue

IBM

Related People

Fruen, R: AUTHOR [+3]

Abstract

When National Language (NLS) resources, i.e., strings, dialogs or bitmaps, are built for applications running under operating systems such as OS/2* and Windows**, each country's resources are typically bundled up into a Dynamic Link Library (DLL). This incurs the overhead of managing the resources for each country by way of shipping the DLL when the product is announced, managing updates and Corrective Service Diskettes (CSDs) together with the overheads incurred in the actual development life-cycle of the product - multiple check-outs and check-ins for the files involved and the possibility of errors.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 47% of the total text.

Dynamic Management of Resources for Different National Languages

      When National Language (NLS) resources, i.e., strings, dialogs
or bitmaps, are built for applications running under operating
systems such as OS/2* and Windows**, each country's resources are
typically bundled up into a Dynamic Link Library (DLL).  This incurs
the overhead  of managing the resources for each country by way of
shipping the DLL when the product is announced, managing updates and
Corrective Service  Diskettes (CSDs) together with the overheads
incurred in the actual development life-cycle of the product -
multiple check-outs and check-ins for the files involved and the
possibility of errors.

      In the case of MQSeries* for Windows NT**, ten different
countries (localizations) are supported, incurring very substantial
overheads.

      In accordance with the described solution, all the resources
are contained within one source file.  This has the benefit that
during the development life-cycle, there is only ever one file that
is checked-in and out of the library system and which is accordingly
easier to track.  The resources, for example, strings are all
assigned unique country IDs by which they can be addressed by using
an offset.

      Also, the file is shipped just once and maintenance is
accordingly made easier.

      When resource-compiled, the resultant file is one DLL.  This
DLL is then shipped for every country that is supported; and, based
on the localization, the appropriate resources are loaded into
memory.  In the case of MQSeries for Windows NT, the language
selection is automatically determined as soon as the Setup program is
invoked.

      The language selection depends on the operating system's
current locale.  So, if the version of Windows NT currently running
is Japanese, the radio button selection in the Language Selection
Dialog would reflect Japanese.  The user would be free to select any
of the other language choices offered.

      Once the language has been selected, the appropriate Setup
mechanism is invoked using the dialog resources and strings
appropriate for that language.

      The mechanics of the implementation are detailed below and will
work on either the OS/2 or Windows platforms with modification to
suit the platform specific directives, especially in the source and
resource files.  The header file remains the same.

      Exemplary contents of the header file, taking into account
three different languages, are as follows:
  #define SID_ENGLISH_BASE     5000/*These are the bases */#define
SID_FRENCH_BASE 6
  #define SID_GERMAN_BAE       7000
  #define SID_IS3_BASE0001/*Equates for the text
   */#define SID_IS3_DESKTOP_CLIENTS 0002
  #define SID_IS3_ON_LINE_DOCS  0003
  #define ENG_SID_IS3_BASE  5001/*The English equates
   */#define ENG_SID_IS3_DESKTOP_
  CLIENTS
  5002#define ENG_SID_IS3_ON_LINE_DOCS      5003
  #define FRE_SID_IS3_BASE  ...