2015-11-20 3 views
2

У нас есть приложение для Windows C++ на английском языке, основанное на MFC. Он по-прежнему разрабатывается с периодическим пересылкой обновлений клиентам.Многоязычные приложения с MFC - рабочий процесс?

Теперь у нас есть реселлер, который хочет перевести наше приложение на другие языки по мере необходимости. Я понимаю, что стандартный способ перевода приложений MFC - это использование библиотек ресурсов, специфичных для языка.

Однако это представляет собой проблему с обновлением приложения. При обновлении функциональности мы иногда добавляем/изменяем/удаляем элементы GUI и текстовые сообщения. Как мы «подталкиваем» эти изменения к людям, которые будут переводить библиотеку ресурсов, без необходимости переводить всю DLL каждый раз? Каков наилучший рабочий процесс для этого? Существуют ли какие-либо инструменты, облегчающие разработку и поддержку многоязычных приложений?

Есть ли какие-либо рамки, которые могли бы помочь? Реселлер предпочел бы иметь простой текстовый файл со всеми текстовыми строками в нем, поэтому обращение к ресурсной DLL уже является нежелательным компромиссом для них.

Есть ли хорошие книги/статьи об управлении многоязычным приложением разработки/обслуживания?

Я никогда не работал в многоязычном проекте, поэтому не уверен, что искать. Спасибо за любые предложения :)

ответ

1

Несомненно, вы сохранили бы свой контент, независимо от того, как он будет развернут, в системе управления исходным кодом. Таким образом, вы можете видеть добавления, изменения и удаления.

Только отправьте переводчику изменения, которые необходимо перевести. Затем они отправляют вам переводы. Затем вы переносите перевод в объект, предназначенный для развертывания (например, DLL).

+0

Иногда правильный перевод зависит от контекста. Это будет сложно, если они получат только разницу. –

1

Есть ли какие-либо инструменты, которые облегчают разработку и поддержку многоязычных приложений ?

Наш продукт использует большой контингент мировых реселлеров, поэтому продукт обычно переводится на многие языки. Мы не переводим ресурсы напрямую. Мы установили отношения с каждым реселлером. Те, которые хотят перевести, получают английскую dll и список того, что изменилось с момента выпуска до выпуска. В большинстве случаев для локализации ресурсов используется инструмент VisualLocalize. Инструмент создает локализованную DLL ресурса из нашей английской dll. Затем dll возвращается нам или упаковывается отдельно. Они используют этот тип инструмента, потому что он позволяет им не только локализовать строки, но и изменять размеры диалоговых элементов управления, если это необходимо. Размер управления может быть проблемой в зависимости от языкового перевода. Например, размер текстовой строки может быть достаточно большим, чтобы содержать английское слово, но слишком мало для некоторых переведенных языков. Хотя может показаться «опасным», позволяя переводчику изменять размеры управления, у нас было достаточно запросов, чтобы сделать это, что теперь стандартная практика. И, если память мне помогает, этот конкретный инструмент может импортировать и экспортировать другие типы файлов, которые потенциально могут быть полезны в вашем конкретном случае.