Qt无法找到编解码器插件

时间:2011-11-26 21:11:21

标签: c++ qt qt4

我在Windows XP上下载并安装了预构建的Qt 4.7.4二进制文件。

然后我编译(使用Visual Studio 2010)并运行(使用Visual Studio 2010调试器)带有该行的程序

QTextCodec* codec = QTextCodec::codecForName("EUC-JP");

返回的指针为空。错误可能是什么?

2 个答案:

答案 0 :(得分:0)

尝试检查library paths设置为:

QApplication app(argc, argv);
qDebug() << app.libraryPaths();

检查任何报告的目录。我正在运行Mac并且我位于路径中的“/ Developer / Applications / Qt / plugins”中。 (请注意,编解码器本身位于名为“codecs”的子目录中。

如果你知道他们在哪里尝试添加它们:

QCoreApplication::addLibraryPath("/the/path/to/the/plugins");

答案 1 :(得分:0)

我想出了答案。当我运行应用程序时,它在 C:/ Program Files / TortoiseHg 中加载了Qt二进制文件,而不是 C:/Qt/4.7.4/bin 中的二进制文件。从系统PATH变量中删除 C:/ Program Files / TortoiseHg 后,一切正常。