是的,可以使用Winsock库来检测网络的可用性。Winsock(Windows Sockets)是Windows操作系统中用于网络通信的标准API。以下是一个使用Winsock库来检测网络是否可用的简单示例代码:

#include <winsock2.h>
#include <iostream>

#pragma comment(lib, "ws2_32.lib")

int main() {
    WSADATA wsaData;
    if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) {
        std::cout << "Failed to initialize Winsock" << std::endl;
        return 1;
    }

    bool isNetworkAvailable = false;
    if (InternetCheckConnection(L"http://www.google.com", FLAG_ICC_FORCE_CONNECTION, 0)) {
        std::cout << "Network is available" << std::endl;
        isNetworkAvailable = true;
    }
    else {
        std::cout << "Network is not available" << std::endl;
    }

    WSACleanup();
    return 0;
}

上述代码中,使用了WSAStartup函数来初始化Winsock库,InternetCheckConnection函数来检测网络是否可用。如果网络可用,函数返回非零值,表示网络可用;如果网络不可用,函数返回零。

请注意,上述代码只是一个简单的示例,实际应用中可能需要更复杂的逻辑来检测网络的可用性。

在Windows下可以使用Winsock库来检测网络是否可用。

原文地址: https://www.cveoy.top/t/topic/i5eo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录