Как я могу изменить язык в AfxMessageBox?

У меня есть приложение MFC, которое использует AfxMessageBox для отображения окон сообщений. Само приложение позволяет конечному пользователю изменять язык интерфейса пользователя. Внутри это происходит путем загрузки ресурсов с использованием LCID (или FindResourceEx API.) Моя проблема в том, что я не могу заставить AfxMessageBox использовать LCID для изменения языка для кнопок OK, Отмена и т. Д. Это также влияет на диалоговые окна открытия файлов и папок.

Есть идеи, как это сделать?

PS. Этот подход должен работать под Windows XP и выше.

0

Решение

В соответствии с эта ТАКАЯ статья, для этого нет стандартных функций, есть ссылка на статью CodeProject «Локализация системы MessageBox«с исходным кодом для DLL (он находится на c #, но кажется достаточно простым, чтобы его можно было переписать на C ++), который использует Windows Hook, чтобы вы могли предоставить свой собственный текст для кнопок MessageBox; есть даже предложение для размер кнопок для текста в дискуссионной части той же статьи.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]