m_request.setUrl(pDownloadInfo->url);
m_preply = pManager->get(m_request);
QObject::connect(m_preply, SIGNAL(error(QNetworkReply::NetworkError)),
this, SLOT(DownloadError(QNetworkReply::NetworkError)));
QObject::connect(m_preply, SIGNAL(finished()), this, SLOT(ReadyRead()));
qt5.0을 사용하고 QNetworkAccessManager를 사용하여 http 파일을 다운로드합니다. 정확하지 않은 잘못된 URL을 입력하면 오류 신호를받을 수 없습니다. 올바른 URL을 입력하면 완료 신호를받을 수 있습니다.qt use QNetworkAccessManager가 오류 신호를 수신하지 못했습니다.
이 질문에 대한 이유는 무엇입니까?
1) 최초의'connect'의 반환 값을 확인하여보고 된 오류를 별도로 처리합니다. 2)'get()'호출 전에'connect' 호출을합니다. –
@Riateche 2)'get()'이'm_preply' 포인터를 할당하기 때문에 불가능합니다. 어쨌든'QNetworkAccessManager'는 이벤트 루프로 제어권을 반환하기 전에는 아무것도 시작하지 않습니다. – alexisdm
하지만 이벤트 신호를 제어 할 수있는 신호를 얻을 수 있습니까? – lvshuchengyin