There are two aspects to WMI and CDM Provider localization — localized MOF files and localized attribute data.
All the MOF files used by the Providers are localized according to the Microsoft* Windows* Management Instrumentation (WMI) globalization model. To accomplish this, each class definition is separated as follows:
Chinese (Taiwan)
Chinese (PRC)
Danish
Dutch (Netherlands)
English (United States)
Finnish
French (France)
German (Germany)
Italian (Italy)
Japanese
Norwegian (Bokmal)
Portuguese (Brazil)
Spanish (Spain - Modern)
Swedish
The language-specific class definitions are stored in a child sub-namespace beneath the namespace that contains a language-neutral basic class definition. For example, for the WMI and CDM Provider, a child namespace ms_409 will exist beneath the root/Intelncs namespace for the English locale. Similarly, there exists a child sub-namespace for each supported language beneath the root/Intelncs namespace.
For root/cimv2 namespaces, the Providers' classes (i.e., IANet_ classes) are derived from base classes added to this namespace by WMI. A sub-namespace with language-specific class definitions for base classes pre-exist beneath the root/cimv2 namespace. The IA_Net language-specific class definitions will be added to this existing child namespace. Due to this dependency on base classes, MOF localization is done only in the default system locale.
To retrieve localized data, a WMI application can specify the locale using a strLocale parameter in SWbemLocator::ConnectServer and IWbemLocator::ConnectServer calls. If the locale is not specified, the default locale for that system will be used. (e.g. MS_409 for US English). This locale is used to select the correct namespace when adding in the English strings.
In addition, IWbemServices::GetObject, SwbemServices.GetObject, IWbemServices:: ExecQuery, and SWbemServices.ExecQuery must specify the WBEM_FLAG_USE_AMENDED_QUALIFIERS flag to request localized data along with the basic definition. This is required in all functions that produce displayable values using value maps, display descriptions or other amended qualifiers from the MOF files.
To get localized attribute data (such as error messages), the Providers need to know the locale of the caller for every call. For this to work correctly, the client must add the locale to the context object that is passed for every call (see Namespace and Context on WBEM context). If the Providers need to return a localizable string, then it will attempt to load a resource DLL that is appropriate for the client's locale. If there is no appropriate resource DLL, then the Providers will return strings in US English.
Copyright© 2002 Intel Corporation. Legal Information