獲取網路卡的相關資訊
導讀:
本文轉自
http://www.18839.com/Edu/A11/11005/11/2005120578958.html
作者姓名 安靜
文章原始出處 北京163社群 C版
////////////////////////////////////////////////////////////////
//執行本程式需要安裝Microsoft Platform SDK .這個可以去MS下載
// http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
//作者:安靜
//mail: aweiken@163.com
//10:56 2002-1-31 start
//14:44 2002-2-2 fix some bug.
//////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include
#include
#include "Iphlpapi.h"
using namespace std;
PIP_ADAPTER_INFO pinfo=NULL;
unsigned long len=0;
CString macaddress;
CString description;
CString type;
CString subnet;
CString IpAddress;
CString gateway;
CString PrimaryWinsServer;
CString dhcp;
void GetInfo();
void ParseData();
void OutPut(CString str);
void main()
{
cout<<"------------------------網路卡資訊檢測---------------------/n";
GetInfo();
}
void GetInfo()
{
if (pinfo!=NULL)
delete (pinfo);
unsigned long nError;
nError = GetAdaptersInfo(pinfo,&len); //1??üoˉêy
if (nError==0)
{
ParseData();
}
if (nError==ERROR_NO_DATA)
{
OutPut("沒有網路裝置資訊");
}
if (nError==ERROR_NOT_SUPPORTED)
{
OutPut("GetAdaptersInfo不支援本系統");
}
if (nError==ERROR_BUFFER_OVERFLOW)
{
pinfo= (PIP_ADAPTER_INFO)malloc(len);
nError = GetAdaptersInfo(pinfo,&len);
if (nError==0)
{
ParseData();
}
}
return;
}
void ParseData()
{
if (pinfo!=NULL)
{
macaddress.Format("%02X:%02X:%02X:%02X:%02X:%02X",pinfo->Address[0],pinfo->Address[1],pinfo->Address[2],pinfo->Address[3],pinfo->Address[4],pinfo->Address[5]);
description = pinfo->Description;
type.Format("%d",pinfo->Type);
PIP_ADDR_STRING pAddressList = &(pinfo->IpAddressList);
IpAddress ="";
do
{
IpAddress += pAddressList->IpAddress.String;
pAddressList = pAddressList->Next;
if (pAddressList != NULL)
IpAddress +="/r/n";
} while (pAddressList != NULL);
subnet.Format("%s",pinfo->IpAddressList.IpMask.String);
gateway.Format("%s",pinfo->GatewayList.IpAddress.String);
if (pinfo->HaveWins)
PrimaryWinsServer.Format("%s",pinfo->PrimaryWinsServer.IpAddress.String );
else
PrimaryWinsServer.Format("%s","N/A" );
if (pinfo->DhcpEnabled )
dhcp.Format("%s",pinfo->DhcpServer.IpAddress.String );
else
dhcp.Format("%s","N/A");
pinfo = pinfo->Next;
}
OutPut("網路裝置為:/t"+description);
OutPut("Mac地址為:/t"+macaddress);
OutPut("網路卡型別:/t"+type);
OutPut("IP地址:/t"+IpAddress);
OutPut("子網掩碼:/t"+subnet);
OutPut("閘道器:/t"+gateway);
OutPut("主Wins伺服器:/t"+PrimaryWinsServer);
OutPut("dhcp伺服器:/t"+dhcp);
}
void OutPut(CString str)
{
cout<}
文章原始出處 北京163社群 C版
////////////////////////////////////////////////////////////////
//執行本程式需要安裝Microsoft Platform SDK .這個可以去MS下載
// http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
//作者:安靜
//mail: aweiken@163.com
//10:56 2002-1-31 start
//14:44 2002-2-2 fix some bug.
//////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include
#include
#include "Iphlpapi.h"
using namespace std;
PIP_ADAPTER_INFO pinfo=NULL;
unsigned long len=0;
CString macaddress;
CString description;
CString type;
CString subnet;
CString IpAddress;
CString gateway;
CString PrimaryWinsServer;
CString dhcp;
void GetInfo();
void ParseData();
void OutPut(CString str);
void main()
{
cout<<"------------------------網路卡資訊檢測---------------------/n";
GetInfo();
}
void GetInfo()
{
if (pinfo!=NULL)
delete (pinfo);
unsigned long nError;
nError = GetAdaptersInfo(pinfo,&len); //1??üoˉêy
if (nError==0)
{
ParseData();
}
if (nError==ERROR_NO_DATA)
{
OutPut("沒有網路裝置資訊");
}
if (nError==ERROR_NOT_SUPPORTED)
{
OutPut("GetAdaptersInfo不支援本系統");
}
if (nError==ERROR_BUFFER_OVERFLOW)
{
pinfo= (PIP_ADAPTER_INFO)malloc(len);
nError = GetAdaptersInfo(pinfo,&len);
if (nError==0)
{
ParseData();
}
}
return;
}
void ParseData()
{
if (pinfo!=NULL)
{
macaddress.Format("%02X:%02X:%02X:%02X:%02X:%02X",pinfo->Address[0],pinfo->Address[1],pinfo->Address[2],pinfo->Address[3],pinfo->Address[4],pinfo->Address[5]);
description = pinfo->Description;
type.Format("%d",pinfo->Type);
PIP_ADDR_STRING pAddressList = &(pinfo->IpAddressList);
IpAddress ="";
do
{
IpAddress += pAddressList->IpAddress.String;
pAddressList = pAddressList->Next;
if (pAddressList != NULL)
IpAddress +="/r/n";
} while (pAddressList != NULL);
subnet.Format("%s",pinfo->IpAddressList.IpMask.String);
gateway.Format("%s",pinfo->GatewayList.IpAddress.String);
if (pinfo->HaveWins)
PrimaryWinsServer.Format("%s",pinfo->PrimaryWinsServer.IpAddress.String );
else
PrimaryWinsServer.Format("%s","N/A" );
if (pinfo->DhcpEnabled )
dhcp.Format("%s",pinfo->DhcpServer.IpAddress.String );
else
dhcp.Format("%s","N/A");
pinfo = pinfo->Next;
}
OutPut("網路裝置為:/t"+description);
OutPut("Mac地址為:/t"+macaddress);
OutPut("網路卡型別:/t"+type);
OutPut("IP地址:/t"+IpAddress);
OutPut("子網掩碼:/t"+subnet);
OutPut("閘道器:/t"+gateway);
OutPut("主Wins伺服器:/t"+PrimaryWinsServer);
OutPut("dhcp伺服器:/t"+dhcp);
}
void OutPut(CString str)
{
cout<}
本文轉自
http://www.18839.com/Edu/A11/11005/11/2005120578958.html
相關文章
- iOS獲取當前裝置的資訊-網路相關iOS
- 獲取app版本號相關資訊APP
- 使用Python獲取ECS相關資訊Python
- C++獲取硬體相關資訊C++
- 獲取網路卡 IP
- PHP獲取客戶端、PHP獲取伺服器相關資訊PHP客戶端伺服器
- PHP獲取上級(來路)URL相關資訊PHP
- oracle資料庫獲取指定表的列的相關資訊Oracle資料庫
- Solaris 10 網路卡相關配置
- js獲取瀏覽器相關資訊簡單介紹JS瀏覽器
- 使用ttXactAdmin、ttSQLCmdCacheInfo、ttSQLCmdQueryPlan獲取SQL相關詳細資訊TTSSQL
- 車輛資訊查詢 - 高效快捷地獲取車輛相關資訊的利器
- 網頁快取相關的HTTP頭部資訊詳解網頁快取HTTP
- winform C# 獲取區分物理網路卡、虛擬網路卡及無線網路卡ORMC#
- hyperic-sigar-1.6.4 java獲取軟硬體相關資訊Java
- 關於獲取事件相應的結果事件
- javascript獲取網頁和螢幕尺寸相關屬性JavaScript網頁
- 用JS獲取函式相關的程式碼JS函式
- Linux環境程式設計簡明教程(1)獲取程式相關資訊的操作Linux程式設計
- 關於模型關聯 獲取不到關聯資訊 求教模型
- 如何獲取外網IP和IP的資訊
- ASP.NET獲取CPU序列號,硬碟序列號ID,獲取網路卡編號ASP.NET硬碟
- 【Spring Boot】使用JDBC 獲取相關的資料Spring BootJDBC
- C# 獲取系統相關時間C#
- Linux作業系統獲取網路卡初始的MAC地址Linux作業系統Mac
- ndis hook開發日誌(2)-獲取網路卡資訊 - Kevins的天空 http://rootsec.tk - CSDNBlogHookHTTP
- 關於網友的獲取MSSQL外來鍵資訊的問題的探討SQL
- SAP中關於使用者IP資訊的獲取
- c++任意變數型別獲取相關C++變數型別
- 網路卡無法獲取IP地址自己給他找個
- esxi網路卡資訊搜尋
- 網址url相關引數獲取處理外掛簡單介紹
- python-help()獲取關於物件的幫助資訊Python物件
- Linux 下獲取LAN中指定IP的網路卡的MAC(實體地址)LinuxMac
- Windows 8系統有線網路卡自動獲取IP地址Windows
- 獲取.crt證書的資訊
- mac獲取cpu資訊Mac
- 獲取資訊版本1