当前位置: 技术问答>linux和unix
如何在qt中使用connect指令来写socket?
来源: 互联网 发布时间:2017-01-24
本文导语: 如何在qt中使用connect指令来写socket? 我想用connect指令来设计socket 但是 qt 自动把 connect 当成传递信号了 也就是qobject里面的connect了 请问我怎样才能用 connect 链接服务器呢? | /*server.h 就是serve...
如何在qt中使用connect指令来写socket?
我想用connect指令来设计socket
但是 qt 自动把 connect 当成传递信号了 也就是qobject里面的connect了
请问我怎样才能用 connect 链接服务器呢?
我想用connect指令来设计socket
但是 qt 自动把 connect 当成传递信号了 也就是qobject里面的connect了
请问我怎样才能用 connect 链接服务器呢?
|
/*server.h 就是server的头文件*/
#ifndef SERVER_H
#define SERVER_H
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include "userevent.h"
#include "VPN_usr.h"
//# define RECVBUF 140
//# define BACKLOG 10
typedef struct data
{
char command[20];
char parm[20];
char context[100];
}Data;
class server : public QThread
{
public:
int new_fd;
unsigned char from_client[140];
UserEvent *usre;
QString str;
QObject test;
void set_target(QWidget *parent);
server();
~server();
void run();
void stop();
void VPN_encrypt_send();
void VPN_certification_send();
private:
Data pData;
volatile bool stopped;
QWidget *parent_m;
int err;
unsigned char c;
int i;
int reclen;
int sockfd;
int namelen;
int portnum;
int sin_size;
int addrsize;
struct sockaddr_in server_addr,client_addr,addr;
unsigned char to_client[140];
};
#endif
/*server.cpp */
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include"encrypt.h"
#include"certification.h"
#include "VPN_usr.h"
#include"server.h"
#include "userevent.h"
server::server()
{
portnum=5554;
stopped= false;
err=0;
new_fd=0;
if((sockfd=socket(AF_INET,SOCK_STREAM,0))