Our application has about 400 calls to MessageDlg. The problem is translating the buttons and captions. The texts are defined as resourcestring constants within VCL pas files, but don't seem to pass through GnuGetText (I have checked both with the debugger and the gnugettext.log file). GnuGetText.pas is the first unit in my uses clause of the DPR file. However, all non-VCL resource strings as well as calls to _() are translated correctly.
The English original version button texts as well as their translations do exist in the .po and .mo files.
Adding My own copy of consts.pas to the project didn't change a thing, but the following code shows the a window saying 'Sí' twice (one from GnuGetText, the other from Windows), as expected:
UseLanguage('es');
MessageBox(0, PChar(SYesButton), '', MB_ICONWARNING or MB_OK);
I have to compile with Delphi5 due to component compatibility. If I place the VCL50.DE into the EXE dir, the button texts are German. The application should be translated to Spanish, and I am not aware of a Spanish VCL50.xx file.
A very similar project sharing 90 % of the source, compiled with Delphi 2010 and GnuGetText does use translated button texts, but window optics and string handling are different between the two compilers.
Your thoughts on how to get the MessageDlg buttons translated?