• 5086阅读
  • 1回复

Qt vs2005 编译程序 部署中文问题。 [复制链接]

上一主题 下一主题
离线dotle
 
只看楼主 倒序阅读 楼主  发表于: 2010-12-09
开发环境是vs2005 + Qt4.6.3:
我用Qt编写了一个管理类程序。别人用vs2005编写了一个动态链接库,里面包含了对底层的一些操作。调用动态链接库的函数进行底层操作时,动态链接库会返回一些std::string,里面包含中文。
我在qt管理程序中调用QString::fromStdString 将std:string 变换为 QString后将信息显示问题是:部署在别人机器上之后,string 转换之后有时候中文正常,有时候是乱码
在应用程序main中已经包含如下代码:
            QApplication::addLibraryPath("./plugins");
    QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312"));
    QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
在我的程序中,所有界面文字框都用翻译文件进行了处理。部署目录中包含plugin/codes/以及相关dll.
在没使用翻译文件之前。界面文字框也完全是乱码。
离线kursk
只看该作者 1楼 发表于: 2010-12-10
试试 codecForName("system")
快速回复
限100 字节
 
上一个 下一个