首页 > 编程语言 >VC++判断网络连接状态

VC++判断网络连接状态

时间:2022-12-14 18:36:39浏览次数:37  
标签:判断 FALSE C++ dwFlag CONNECTION INTERNET 网络连接 bRet 连接


在开发中,需要判断是否有网络连接,实现函数如下:

#include <Wininet.h>

BOOL CMFCDemoDlg::DoHaveInternetConnection()
{
BOOL bRet = FALSE;

// 如果函数返回FALSE,则肯定没有连接
DWORD dwFlag;
__try
{
if (InternetGetConnectedState(&dwFlag, 0))
{
// 必须有下列任意一种连接,才认为是有连接
// 因为INTERNET_CONNECTION_CONFIGURED被置位也可能是没有连接
if ((dwFlag & INTERNET_CONNECTION_LAN) ||
(dwFlag & INTERNET_CONNECTION_MODEM) ||
(dwFlag & INTERNET_CONNECTION_PROXY))
{
bRet = TRUE;
}
}
}
__except (EXCEPTION_EXECUTE_HANDLER)
{
bRet = FALSE;
}

return bRet;
}

 

标签:判断,FALSE,C++,dwFlag,CONNECTION,INTERNET,网络连接,bRet,连接
From: https://blog.51cto.com/u_15461374/5938158

相关文章

  • <一>C++ STL
    STL(standardtemplatelibaray-标准模板库):是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架。通俗来说:STL就是将常见的......
  • c++类型萃取
    判断两个类型的关系#include<iostream>#include<type_traits>usingstd::cout;usingstd::endl;//is_sameisusedtojudgetwodatatypessameornotduringcompili......
  • C++ 通过 syscall 获取本线程 TID
    通过pthread_self及std::this_thread::getid函数获取的线程ID,跟使用top/htop命令呈现的线程ID不对应。通过如下代码获取跟top/htop一致的TID:#include<syscall.h>pi......
  • C++ 如果设置日期 & 时间基础篇
        ......
  • python学习笔记整理02(判断、循环)
    程序开发中有三大流程:顺序、分支、循环 一、顺序:代码从上到下,依次执行 二、分支:判断语句,代码有选择的执行if判断条件1:书写条件1成立(真),执行的代码#判断条......
  • c++ 部署libtorch时对Tensor块的常用操作API
    一、前言使用pytorch可以很方便地训练网络,并且pytorch的官方网站中给出了很全的python对tensor的操作接口API,但是在部署libtorch的时候,c++对tensor的操作接口API资料甚少,......
  • 谷歌外链建设2022年如何判断和购买google优质外链
    如何去建设或者购买有利于自己外贸网站在谷歌排名中的优质外链?答案是:你需要来自各行各业的高权重链接我们知道,做谷歌seo,想要有排名,外链的作用可以说是非常重要的。可以说没......
  • c++字符串和字符数组互相转
    voidmain(){//字符串转字符数组stringname="ddddd";charbuf[]={0};strcpy(buf,name.c_str());//字符串转字符数组,使用strcpycout<<n......
  • C++基础篇之什么是数据类型
       ......
  • C++获取文件信息
    官方文档:https://learn.microsoft.com/zh-cn/cpp/c-runtime-library/reference/stat-functions?view=msvc-170推荐使用_tstat方法,会根据编译环境选择适合的方法。该方法会......