0

QList オブジェクトの使用に問題があります。

Unable to access Ssl error list from QNetworkAccessManagerと同じ問題ではないと思います

QSslSocket を使用してプロジェクトを作成しましたが、QNetworkAccessManager に切り替えたいと考えています。しかし、ヘッダーファイルに次の行を挿入するとすぐに

private slots:
    void _sslErrors(QList<QSslError> errors);

次のリンカ エラーが表示されます

c:\qt\4.4.3\include\qtcore\../../src/corelib/global/qglobal.h(1711) : error C2027: use of undefined type 'QSslError'
        c:\qt\4.4.3\include\qtnetwork\../../src/network/access/qnetworkaccessmanager.h(58) : see declaration of 'QSslError'
        c:\qt\4.4.3\include\qtcore\../../src/corelib/tools/qlist.h(347) : see reference to class template instantiation 'QTypeInfo<T>' being compiled
        with
        [
            T=QSslError
        ]
        c:\qt\4.4.3\include\qtcore\../../src/corelib/tools/qlist.h(346) : while compiling class template member function 'void QList<T>::node_copy(QList<T>::Node *,QList<T>::Node *,QList<T>::Node *)'
        with
        [
            T=QSslError
        ]
        c:\qt\4.4.3\include\qtcore\../../src/corelib/tools/qlist.h(524) : while compiling class template member function 'QList<T>::~QList(void)'
        with
        [
            T=QSslError
        ]
        tmp\moc_QFastdmuHttpBatchClientModuleSSLRepositoryIndex3.cpp(72) : see reference to class template instantiation 'QList<T>' being compiled
        with
        [
            T=QSslError
        ]
c:\qt\4.4.3\include\qtcore\../../src/corelib/tools/qlist.h(349) : error C2514: 'QSslError' : class has no constructors
        c:\qt\4.4.3\include\qtnetwork\../../src/network/access/qnetworkaccessmanager.h(58) : see declaration of 'QSslError'

これは、openssl サポートが非アクティブ化されている場合にのみ発生するはずですが、アクティブな openssl で Qt をコンパイルすると、QSslSocket::supportSsl() が true を返し、純粋な QSslSocket オブジェクトを使用して SSL サーバーに既に正常に接続していました。

ところで: QNetwork/QSslSocket をヘッダー ファイルにインクルードするとすぐに、コンパイラは壊れません。

誰かが何がうまくいかないのか考えていますか?

Thx、ロバート

4

0 に答える 0