2016-05-17 7 views
1

を放出しません。QNetworkAccessManagerは、だから私はこのコードを持っている信号

+0

あなたのトピックは、 "QNetworkAccessManagerは動作しません" falseです。私はそのクラスを何度も使ってきましたが、問題はあるものの、「うまくいきません」と言うのは大変嘘です。 「正しく使用する方法がわからない」と言えば、真実に近いでしょう。 –

+0

大丈夫私はそれを名前を変更しようとしています – filcitheking

+0

"他の機能に信号を送ることができません"ということは、スロットが決して呼び出されないことを意味しますか? –

答えて

1

私は正確に何をしたい知っているが、しないでください:

  1. をあなたはいくつかの種類onRequestCompleted(QNetworkReply *reply)の代わりにポインタを返信使うのはなぜ?
  2. その場合:

    QUrl url("http://..."); 
    QNetworkRequest request(url); 
    connect(m_networkManager, &QNetworkAccessManager::finished, this, &IpResolver::onRequestCompleted); 
    m_networkManager->get(request); 
    
  3. そして、あなたのスロットは、たとえば、次のようになります。

    void IpResolver::onRequestCompleted(QNetworkReply *reply) 
    { 
        QString webContent; 
        if (reply->error() == QNetworkReply::NoError) 
         webContent = reply->readAll(); 
    } 
    
+0

最初は、おかげさまで助けてくれてありがとうございましたが、あなたのバージョンを試しましたが、コンパイル時に例外がスローされます。例外がスローされました:読み取りアクセス違反。 this->は0x555C3A43でした。 この例外のハンドラがある場合は、プログラムを安全に続行できます。 – filcitheking

+1

あなたはどこで例外を捕まえていますか?どんなデバッグモードがあなたに伝えますか? – someoneinthebox

+0

ここで私は例外をキャッチします:QNetworkReply * QNetworkAccessManager :: get(const QNetworkRequest&request) { return d_func() - > postProcess(createRequest(QNetworkAccessManager :: GetOperation、request))); } – filcitheking

関連する問題