3
我正在構建一個在具有多個NIC(多宿主)的系統上運行的Linux Qt5/C++應用程序。我需要強制我的傳出TCP連接使用特定的NIC/IP。我已經嘗試了下面的代碼,但是netstat證實我的應用程序仍在使用錯誤的本地NIC/IP。QTcpSocket無法綁定到正確的IP
if (m_tcpSocket->bind(localaddress)) qDebug() << "Bind success";
m_tcpSocket->connectToHost(
remoteaddress,
remoteport,
QTcpSocket::ReadWrite);
}
我是不是正確地稱這個錯誤?我看到「綁定成功,」所以我想調用的是正確的......但我無法解釋爲什麼它不工作
更新:我發現這個錯誤報告:https://bugreports.qt.io/browse/QTBUG-29732
有一種解決方法?我在QAbstractSocket中看到setLocalAddress(),但我不確定它是否相同
抱歉,對於非信息性評論。自Digia接管Qt以來,我注意到這是一件可悲的事情。他們開始關注C++,並將大部分資源投入到QML :( – GreenScape 2014-10-04 22:45:51