我想獲取一塊網卡的狀態,使用,GetAdaptersInfo函式
但是此函式只能獲取激活狀態下的網卡狀態,不能獲取禁用狀態下的。問下Windows下有這樣的API能獲取禁用狀態下的網卡狀態。
uj5u.com熱心網友回復:
#include <iphlpapi.h>#pragma comment(lib, "IPHLPAPI.lib")
//////////////////////
void CMFCTestDlg::OnBnClickedButton1()
{
PIP_ADAPTER_INFO info;
info = (IP_ADAPTER_INFO *)malloc(sizeof(IP_ADAPTER_INFO));
ULONG ulOutBufLen = sizeof (IP_ADAPTER_INFO);
if(GetAdaptersInfo(info, &ulOutBufLen) == ERROR_BUFFER_OVERFLOW)
{
//ulOutBufLen為鏈表(存網卡資訊)長度,
//這個是根據網卡個數的來的
//第一次呼叫GetAdaptersInfo得到ulOutBufLen長度
//重新分配記憶體
free(info);
info = (IP_ADAPTER_INFO *)malloc(ulOutBufLen);
}
//再次呼叫GetAdaptersInfo,多個網卡資訊就都在info中了
if(GetAdaptersInfo(info, &ulOutBufLen) == ERROR_NO_DATA)
{
MessageBox(_T("已禁用"));
}
else
{
MessageBox(_T("已連接"));
}
free(info);
info = NULL;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/74419.html
上一篇:請大神們救救我
