Hi.
I seek advice in how to design multiple language support for my MFC
app.

I guess that the normal way to do this is based on the resourcefile and
the system-defined language - very clever indeed! However my problem
is:

1)
My resource file (hence, list of strings) are extremly large and
umanageable.

2)
The user must have access to a menu where the different languages are
available (not based on system preferences but user selection).


Do deal with the extemly large stringtable I have created a set of
header files to each of my modules defining the necessary strings. Fx.


"StringResourceFileError.h"

const CString CSTR_FILE_ERROR_ARCHIVE_FRM = _T("File archive error ...
reading the file.");
....
....


Say I want to add language support for Danish?
How could this be achieved with this design?
A macro might do the trick - it chooses the right string accordingly to
the selected language:

DK_CSTR_FILE_ERROR_ARCHIVE_FRM // Danish
EN_CSTR_FILE_ERROR_ARCHIVE_FRM // English
SP_CSTR_FILE_ERROR_ARCHIVE_FRM // Spanish
FR_CSTR_FILE_ERROR_ARCHIVE_FRM // French


MACRO_FOR_GETTING_STRINGS(CSTR_FILE_ERROR_ARCHIVE_ FRM)
{
get user-selected language (fx. Spanish)
return SP_CSTR_FILE_ERROR_ARCHIVE_FRM
}

Any suggestions on how to make a macro with this property?



Thanks,
Jonas, Denmark