我在Windows XP上下載並安裝了預編譯的Qt 4.7.4二進制文件。Qt未能找到編解碼器插件
然後我編譯(使用Visual Studio 2010)跑(使用Visual Studio 2010調試器)的程序與線
QTextCodec* codec = QTextCodec::codecForName("EUC-JP");
返回的指針爲空。錯誤可能是什麼?
我在Windows XP上下載並安裝了預編譯的Qt 4.7.4二進制文件。Qt未能找到編解碼器插件
然後我編譯(使用Visual Studio 2010)跑(使用Visual Studio 2010調試器)的程序與線
QTextCodec* codec = QTextCodec::codecForName("EUC-JP");
返回的指針爲空。錯誤可能是什麼?
我想出答案。當我運行應用程序時,它將Qt二進制文件加載到C:/ Program Files/TortoiseHg而不是在C:/Qt/4.7.4/bin中的二進制文件中。從系統PATH變量中刪除C:/ Program Files/TortoiseHg後,一切正常。
嘗試檢查什麼library paths設置爲:
QApplication app(argc, argv);
qDebug() << app.libraryPaths();
檢查的任何報告的目錄。我正在運行Mac,並且位於路徑中的「/ Developer/Applications/Qt/plugins」中。 (注意,編解碼器本身駐留在一個子目錄名爲「編解碼器」)
如果你知道他們是嘗試加入他們:
QCoreApplication::addLibraryPath("/the/path/to/the/plugins");