当前位置: 首页 > news >正文

泰安市网站建设外贸网站 源码

泰安市网站建设,外贸网站 源码,多种五屏网站建设,注册劳务公司需要什么条件多少钱前言 很多时候&#xff0c;我们可能会图省事直接调用系统中的ping命令&#xff0c;但这是很不科学的~ 废话不多说&#xff0c;直接上代码.. .pro文件 在.pro文件末尾添加一行&#xff1a; LIBS -liphlpapi -lws2_32 .h文件 在.h文件中加入&#xff1a; #include <Q…

前言

很多时候,我们可能会图省事直接调用系统中的ping命令,但这是很不科学的~

废话不多说,直接上代码..

.pro文件

在.pro文件末尾添加一行:

LIBS += -liphlpapi -lws2_32

.h文件

在.h文件中加入:

#include <QDebug>
#include <winsock2.h>
#include <iphlpapi.h>
#include <icmpapi.h>
#include <ws2tcpip.h>
#include <iostream>
using namespace std;private:int ping(const char *ip); #也可以加在public下,不是一定要private

.cpp文件: 

// ping函数
int Widget::ping(const char *ip){//通常使用MAKEWORD宏来指定版本,如MAKEWORD(2, 2)表示使用Winsock 2.2版本。WSADATA wsaData;//WSAStartup函数用于初始化Winsock库,并指定Winsock库的版本。这个函数需要在使用Winsock库的其他函数之前调用,而在程序结束时,你需要调用WSACleanup函数来释放Winsock库的资源。if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0){qDebug()<<"Error1:"<<WSAGetLastError();return -1;}// 创建socketSOCKET sock = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);if (sock == INVALID_SOCKET){qDebug()<<"Error2:"<<WSAGetLastError();return -2;}//设置目的地址SOCKADDR_IN dest;dest.sin_family = AF_INET;dest.sin_addr.s_addr = inet_addr(ip);//创建ICMP数据包const int packet_size = 32; //数据包大小,取值范围 0-65507char packet[packet_size];memset(packet, 0, packet_size); //memset函数通常用于初始化一段内存空间,或者将一段内存空间清空。这句的作用是将packet指向的内存空间清空,以便后续的代码可以使用这段内存空间来存储ICMP报文//创建icmp句柄ICMP_ECHO_REPLY reply;HANDLE icmp_handle = IcmpCreateFile();if (icmp_handle == INVALID_HANDLE_VALUE){qDebug()<<"Error3:"<<GetLastError();return -3;}DWORD reply_size = packet_size + 28; //接收到的ICMP回复数据的大小。+28等同于:+sizeof(reply)//发送ICMP数据包int status = IcmpSendEcho(icmp_handle, dest.sin_addr.s_addr, packet, packet_size, NULL, &reply, reply_size, 2000);if (status == 0) //这里status == 0 表示执行失败,要查看错误码可以查看: reply.Status{qDebug()<<"Error4:"<<GetLastError();return -4;}// Print the responseqDebug()<<"延时:" << reply.RoundTripTime; //查看延时qDebug()<<"包大小:" << reply.DataSize; //查看数据包大小qDebug()<<"TTL值:" << (int)reply.Options.Ttl; //查看ttl值WSACleanup(); //释放WSAStartupreturn reply.RoundTripTime; //返回延时
}

ping函数调用方法示例:

方法一:

ping("192.168.1.1");

方法二:

QString ip = "192.168.1.1";
ping(ip.toUtf8());

如果要重复执行,可以通过循环重复调用ping函数..

reply.Status状态码:

常量名

含义

IP_SUCCESS

0

状态是成功。

IP_BUF_TOO_SMALL

11001

答复缓冲区太小。

IP_DEST_NET_UNREACHABLE

11002

目标网络不可达。

IP_DEST_HOST_UNREACHABLE

11003

目标主机不可达。

IP_DEST_PROT_UNREACHABLE

11004

目的地的协议是遥不可及。

IP_DEST_PORT_UNREACHABLE

11005

目标端口不可达。

IP_NO_RESOURCES

11006

IP资源不足。

IP_BAD_OPTION

11007

指定了错误的IP选项。

IP_HW_ERROR

11008

一个硬件错误。

IP_PACKET_TOO_BIG

11009

包太大。

IP_REQ_TIMED_OUT

11010

请求超时。

IP_BAD_REQ

11011

一个坏的请求。

IP_BAD_ROUTE

11012

一个糟糕的路线。

IP_TTL_EXPIRED_TRANSIT

11013

在传输过程中的生存时间(TTL)的过期。

IP_TTL_EXPIRED_REASSEM

11014

在碎片重组过程中的生存时间过期。

IP_PARAM_PROBLEM

11015

一个参数的问题。

IP_SOURCE_QUENCH

11016

数据报到达太快,处理和数据报可能被丢弃。

IP_OPTION_TOO_BIG

11017

一个IP选项是太大了。

IP_BAD_DESTINATION

11018

一个坏的目的地。

IP_GENERAL_FAILURE

11050

一般故障。这个错误可以返回一些畸形的ICMP数据包


文章转载自:

http://tPye1SGJ.rnxw.cn
http://SP56bJEs.rnxw.cn
http://JZ1Vh5HY.rnxw.cn
http://uqGs6MUk.rnxw.cn
http://nkhdNHCW.rnxw.cn
http://FkVKiPx6.rnxw.cn
http://LI43Ftmm.rnxw.cn
http://1hdRpHCY.rnxw.cn
http://AjvSmVjW.rnxw.cn
http://HekKDPAE.rnxw.cn
http://FAaWl0Cf.rnxw.cn
http://lqydAegu.rnxw.cn
http://Ddto7mFQ.rnxw.cn
http://xr3o1LCk.rnxw.cn
http://GC3HdEc8.rnxw.cn
http://NUSgMWa2.rnxw.cn
http://wUz3KVYs.rnxw.cn
http://0RqSoupu.rnxw.cn
http://5gI7u4V2.rnxw.cn
http://0ObieU0C.rnxw.cn
http://woYn8UK5.rnxw.cn
http://TXeqtk5k.rnxw.cn
http://xNensDVf.rnxw.cn
http://nwzQiGVL.rnxw.cn
http://kcQP3zxP.rnxw.cn
http://gDB0W7Vr.rnxw.cn
http://N3FfgUWy.rnxw.cn
http://KDV7fbWn.rnxw.cn
http://fF9EKGXM.rnxw.cn
http://FbtCHgCv.rnxw.cn
http://www.cdong.cn/news/133/

相关文章:

  • 北京个人网站公司seo优化搜索引擎网站优化推广网络关键词优化-乐之家网络科技
  • 烟台网站开发技术网络培训的好处
  • 企业网站报告册设计模板网站建设需求有哪些
  • 做网站的具体步骤设计机构
  • 汽车门户网站开发有做机械工装的网站吗
  • 如何用visual studio做网站服装网页设计图片
  • 个人什么取消网站备案茶叶建设网站市场分析
  • 哪些网站可以免费做推广呢首次建设网站流程
  • 织梦做的网站怎么上传视频教程专业做网站和小程序
  • 自己做网站处理图片用什么软件wordpress顶踩插件
  • 秦皇岛网站制作报价网站建设背景
  • 建各公司网站要多少钱企业网站推广方案的策划
  • seo网站排名推广获取网站访问者qq号
  • 宁波外贸网站制作公司设计本源
  • 惠州网站搭建怎么做成都三大设计院有哪些
  • 公司网站建设维护合同wordpress4.9.x火车头发布
  • 建外贸网站推广做智能网站软件下载
  • 平凉市城乡建设局网站怎么做狼视听网站
  • 有区域名和主机怎么做网站永州市开发建设投资有限公司网站
  • php 企业网站现在建个企业网站要多少钱
  • 登建设厅锁子的是哪个网站怎么刷网站点击量
  • 青岛公路建设集团有限公司网站淘宝客做网站多少钱
  • 网站代码检查wordpress发布文章禁用谷歌字体
  • 深圳网站建设软件开发公司排名做企业国际网站多少钱
  • 门户网站要用什么软件做腾讯云服务器免费体验
  • 网站开发的前端语言是哪些上海企业网站设计公司
  • 物联网在生活中的应用临沂seo公司稳健火星
  • 网站建设策划书wordpress百度云盘插件
  • h5 小米网站模板权威的网站建设
  • 网站怎么做排名wordpress替换默认页脚代码