Gettext() & Windows (
http://www.gnu.org/software/gettext/)
Написал тестовый проект "Привет мир", в котором пытаюсь перевести фразу "Hello, world!" на на разные языки мира. Вот исходный код:
#include <iconv.h>
#include <cassert>
#include <cerrno>
#include <string>
#include <stdexcept>
#include <iostream>
#include "windows.h"
#include <libintl.h>
using std::string;
using std::cout;
using std::endl;
int main(int argc, char* argv[]) {
string package("test");
cout << setlocale(LC_ALL, "") << endl;
bindtextdomain(package.c_str(), "./locale");
textdomain(package.c_str());
cout << gettext("Hello, world!") << endl;
cout << "codeset = " << bind_textdomain_codeset(package.c_str(), "CP1251") << endl;
cout << gettext("Hello, world!") << endl;
return 0;
}
В в папке "./locale" есть два файла с переводом, один на русском, другой на украинском языке. Но почему-то, когда я задаю русскую локаль setlocale(LC_ALL, "Russian_Russia" программа выводит только на украинском, хотя под линуксом все работает. Подскажите в чем проблемма