MFC localization does not work with installing MUI Windows 7

OK, so we are writing our MFC application to use the built-in localization support with satellite DLLs with MFC 7. Everything seems to work fine, except that installing Windows 7 Enterprise Edition with MUI support and using the Swedish interface instead of the English user interface on - still displays the English interface in our application.

The application uses the default Swedish language, with English localization of the DLL in the form of AppNameENU.dll, so MFC actually deliberately switches to English under these conditions, as if it did not care about the user's choice in MUI - whether Windows is turned on and only loaded The default delivery language on Windows?

On the MSDN page on this (link above), I read it, since the MFC should really take these settings into account, but I'm not 100% sure. Can someone clarify?

+2
source share
1 answer

This is because support for MFC support for language selection has a design error : it decides to load resources from exe only if the DLL does not match the user or the system language.

In your case: it sets its (ordered) list of languages ​​as such:

  • Swedish (user language)
  • English (System Language)

DLL (: DLL, exe!): . !

. CLanguageSupport. .

. , , DLL-, , . ( . , CWinApp:: InitInstance()!)

, ( ), , , , .

, , appTranslator; -)

,

+4