我尝试实现继承QTcpServer
的自己的服务器类。
这是我尝试运行的简单代码:
server.cpp
MyServer::MyServer(QObject *parent) :
QTcpServer(parent)
{
}
void MyServer::incomingConnection(qintptr handle)
{
qDebug() << "Incomming";
SecureSocket * socket = new SecureSocket(this);
connect(socket, SIGNAL(StatusMessage(QString)), SIGNAL(StatusMessage(QString)));
socket->Process(handle);
}
的main.cpp
MyServer serv;
if(serv.listen(QHostAddress::Any,1080))
console.WriteLine("Listenning on port 1080..."); //Console it's just a class to display message (here it's a simple qDebug())
else {
console.WriteLine("Unable to start server");
}
QThread serverThread;
QObject::connect(&serverThread,SIGNAL(finished()),&serverThread,SLOT(deleteLater()));
serv.moveToThread(&serverThread);
我的问题是我从未到达incommingConnection
(我在浏览器中尝试https://localhost:1080
作为测试客户端)而我实际上并不理解为什么。服务器似乎正常监听,因为只要应用程序运行,我的浏览器就会尝试加载页面,并在退出应用程序时设置加载错误。
P.S。 :它是一个控制台应用程序