QT网络高级应用

获取系统环境变量的函数QProcess::systemEnvironment()是一个静态函数,该函数以键值对列表的形式返回系统环境变量信息。

查询本机所有的网络接口信息。QNetworkInterface类的allInterfaces()静态函数可以列出主机所有网络接口。每一个网络接口可以包含零个或多个IP地址项,以及与之对应的掩码和广播地址。可以调用addressEntries函数获取地址项QNetworkAddressEntry类的列表,接下来可以调用QNetworkAddressEntry类的ip(),netmask()和broadcast函数分别获取对应的IP地址,掩码和广播信息。如果用户只需要查询IP地址,则直接调用QNetworkInterface类的allAddresses()静态函数,它将以QHostAddress类列表的形式返回本机所有IP。从而省去了对每一个址项类QNetworkAddressEntry的操作。

 

使用代理:

从QT4.1起提供了一个网络层的代理类QNetWorkProxy。该类为其他QT网络类提供配置网络层的方法,目前支持的类包括QAbstractSocket、QTcpSocket、QUdpSocket、QTcpServer、QHttp和QFtp。使用步骤如下:

QNnetworkProxy proxy;

proxy.setType( QNetworkProxy::Socket5Proxy );

proxy.setHostName("proxy,example.com");

proxy.setPort(1080);

proxy.setUser("username");

proxy.setPassword("password");

QNetworkProxy::setApplicationProxy(proxy);

另一种应用范围代理的方法是使用QAbstractSocket::setProxy()和QTcpServer::setProxy()为单独的套接字设置代理。关闭代理的方法如下:

QTcpServer serverScoket;

serverSocket->setProxy(QNetworkProxy::NoProxy);

 

QT网格功能的扩展:

QT网络模块的抽象基类QAbstractSocket提供了一对获取和设置套接字的操作,socketDescriptor()与setSocketDescriptor()函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值