原blog文章 獲取網絡卡資訊 二

2021-04-06 19:57:35 字數 766 閱讀 5588

winsock2只提供了查詢ip位址的函式,對於其他如mac,子網掩碼,閘道器就無能為力了.win2000下有乙個iphlpapi.dll,提高了其他查詢,但是要 iphlpapi.lib的支援.本函式直接呼叫 dll,省去了中間庫的要求,但是要求另外一些資料結構的支援.我把它們從 iphlpapi.h,iptype.h,winsock2.h....等一大堆頭檔案定義中挖出來,定義成我的 driphlpapi.h.呵呵,自我感覺不錯!

#define max_adapter_description_length 128

#define max_adapter_name_length 256

#define max_adapter_address_length 8

typedef struct _ip_addr_string ip_addr_string, *pip_addr_string;

typedef struct _ip_adapter_info ip_adapter_info, *pip_adapter_info;

dword winapi getadaptersinfo(pip_adapter_info padapterinfo, pulong poutbuflen);

//需要自己定義呼叫函式型別 gai (主要是壓棧順序 __stdcall)

typedef dword (__stdcall *gai) (pip_adapter_info padapterinfo, pulong poutbuflen);

gai lpgetadaptersinfo;

獲取網絡卡資訊

在windows中獲取網路介面卡相關資訊是很方便的,可以通過getadaptersinfo函式獲取並儲存在ip adapter info結構體中,再對結構休進行解析得到介面卡資訊。有關函式和結構體的詳細說明可以參考msdn,這裡就不再複述。下面直接給出具體示例程式。引入標頭檔案 include in...

網絡卡裝置資訊獲取

網絡卡工作在osi七層協議中的鏈路層,是主機與網路對接的重要介面,它完成了網路連線的物理和電訊號之間的轉換,同時還對網路資料報幀進行傳送 接收 校驗等,是上層網路應用的基石。在計算機架構中,通常是cpu通過內部匯流排 ahb bus 或者 pci bus 與mac控制單元通訊,然後由mac控制單元通...

linux 獲取網絡卡資訊

sar n dev 2 10 41 37 am iface rxpck s txpck s rxkb s txkb s rxcmp s txcmp s rxmcst s 10 41 39 am eth0 1.50 1648.00 0.15 117.54 0.00 0.00 1.00 10 41 39...