0

我的项目运行良好。

我有兴趣使用 QNetworkAccessManager 发送一些请求。为此,我从第一个示例开始并包括

#include <QNetworkAccessManager>
#include <QNetworkRequest>

只要我包括以下几行:

QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(QUrl("http://qt.nokia.com")));

一旦我写了第一行(QNetworkAccess ......)并尝试运行,我就会收到一个从第一次出现的新错误:

ENTRY POINT NOT FOUND
The procedure entry point ??0QDataStream@@QAE@PAVQByteArray@@H@Z could not be located in the dynamic link library QtCore4.dll (and respectively QtCored4.dll when I am switching to the debug mode).
4

1 回答 1

0
  • 您是否在专业文件中包含网络?

    配置 += 核心网络

  • 使用像Depency Walker这样的应用程序来检查将加载哪个 dll。最终,您的系统中安装了一个较旧的 QtNetwork.dll (evtl. $WIN$/system32/),它的调用优先级高于 QT-Directory/Development-Directory 中的 QtNetwork.dll。

  • 还要检查您的路径变量和 qt 环境变量。

如果您发现错误的 dll 尝试重命名它并重新启动。另一种选择是执行完全清理和 qmake,但最可能的原因是加载了错误的 .dll。

于 2013-06-28T12:00:19.503 回答