博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Query the status of network adapter
阅读量:5985 次
发布时间:2019-06-20

本文共 804 字,大约阅读时间需要 2 分钟。

Return Value:

  • 0: Connected
  • 1: Disconnected
  • -1: Not available

 

Source Code:

int QueryNetworkAdapterStatus(string guidName)

{
    string str = "\\\\.\\";
    str += guidName;

    HANDLE m_hNetworkCardHandle = ::CreateFileA(

        str.c_str(),
        0,
        FILE_SHARE_READ,
        NULL,
        OPEN_EXISTING,
        0,
        INVALID_HANDLE_VALUE
    );

    if (m_hNetworkCardHandle == INVALID_HANDLE_VALUE)

        return -1;

    ULONG ConnectedState = 0;

    ULONG BytesWritten = 0;
    ULONG OidCode = OID_GEN_MEDIA_CONNECT_STATUS;

    if (0 != ::DeviceIoControl(m_hNetworkCardHandle,

        IOCTL_NDIS_QUERY_GLOBAL_STATS,
        &OidCode,
        sizeof(OidCode),
        &ConnectedState,
        sizeof(ConnectedState),
        &BytesWritten,
        NULL))
    {
        ::CloseHandle(m_hNetworkCardHandle);
        return ConnectedState;
    }
    else {
        ::CloseHandle(m_hNetworkCardHandle);
        return -1;
    }
}

转载于:https://www.cnblogs.com/yuvu/archive/2012/07/04/2576581.html

你可能感兴趣的文章
【Python】TypeError: can only concatenate list (not "int") to list
查看>>
mac OSX 上 brew install hive
查看>>
Spring Cloud构建微服务架构(一)服务注册与发现
查看>>
从Atlas到Microsoft ASP.NET AJAX(8) - UpdatePanel Control
查看>>
姚期智:量子计算只剩最后一里路;霍金:人类最好移民外太空
查看>>
winrunner事务概念的代码应用(毫秒级)
查看>>
Conversion to Dalvik format failed with error 1的又一种情形
查看>>
Citrix VDI实战攻略之八:测试验收
查看>>
windows下安装memcached
查看>>
Java读取properties文件的思考
查看>>
分秒必争域的时间同步问题[为企业部署Windows Server 2008系列十四]
查看>>
IronRuby:请教如何在DOS窗口正确显示UTF-8字符后执行bat文件呢?
查看>>
关于设置SQLPLUS提示符样式的方法
查看>>
厕所老鼠和粮仓老鼠
查看>>
算法与数据结构:C语言的整数数组全排列(源码)
查看>>
arcengine,深入理解游标Cursors,实现数据的快速查找,插入,删除,更新
查看>>
你可能不知道的10 个JavaScript 小技巧[转]
查看>>
Content-Script-Type的设置好象没多大用处,或许我不知道有什么用
查看>>
获取URL最后一个 ‘/’ 之后的字符
查看>>
Win32程序和控制台应用程序的项目互转设置
查看>>