1. 程式人生 > >有關windows系統IP相關API函式學習(1)——GetAdaptersInfo()

有關windows系統IP相關API函式學習(1)——GetAdaptersInfo()

windows系統中有關IP的函式(1):GetAdaptersInfo():

獲得電腦中的所有是介面卡相關的資訊,比如介面卡的描述(例如:Intel(R) Centrino(R) Advanced-N 6205)、介面卡的名稱AdapterName(例如:{50447B9F-5B9B-44BE-80D1-75472FC959D8})、IP地址等等。

該函式的定義在IPTYPES.H檔案中,要使用必須載入庫檔案“IPHLPAPI.LIB”。

有以下幾個問題:

1、無法獲得介面卡的真實名稱(例如:本地連線);

2、無法獲得網絡卡的各個掩碼;

3、無法獲得已經禁用的網絡卡的資訊;

4、在學習過程中發現GetAdaptersInfo(pAdapterInfo, &ulAdapterInfoSize)獲得的整個結構的長度(ulAdapterInfoSize)除以每個介面卡資訊的長度(sizeof(IP_ADAPTER_INFO)),獲得的沒有禁用的介面卡個數總是比實際小1個;

解決途徑:

1、在網上搜索《如何獲得“本地連線”的名稱》、《VC++ 獲取網路連線名稱“本地連線”的兩種方法》等,再加上自己的測試,介面卡的AdapterName其實是一個識別符號一樣的東西,對應著網路連線介面下的名稱,你隨便重新命名都不影響介面卡的AdapterName,只是改變了介面卡的AdapterName對應的名稱描述。

這個可以在登錄檔HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\XXXX\Connection中的Name獲得,其中的XXXX指的是相應介面卡的AdapterName。

2、這個可以在登錄檔HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\XXXX\Parameters\Tcpip中的SubnetMask獲得,其中的XXXX指的是相應介面卡的AdapterName。

3、

4、IP_ADAPTER_INFO結構的長度就是648位元組。在有4個介面卡的情況下,總的大小是2592;在有3個介面卡的情況下,總的大小是1920。相當於總的結構體重每個介面卡的長度只有640位元組,比實際小8位元組。具體為什麼,需要進一步研究。

相關推薦

有關windows系統IP相關API函式學習1——GetAdaptersInfo()

windows系統中有關IP的函式(1):GetAdaptersInfo(): 獲得電腦中的所有是介面卡相關的資訊,比如介面卡的描述(例如:Intel(R) Centrino(R) Advanced-N 6205)、介面卡的名稱AdapterName(例如:{50447B9

Ardupilot chibios主函式學習1

目錄 文章目錄 目錄 摘要 0序言 第一部分chibios主函式 **(1)主回撥函式入口** **(2)主回撥函式入口** **(3)主回撥函式入口** **(4)主回撥函式入口** 1.函式h

Jenkins 學習1Windows系統下安裝

一、jenkins是什麼?         還是小白,先放個連結:https://blog.csdn.net/ios_xumin/article/details/78125913   二、下載jenkins   &nbs

python入門學習1——指令碼(常用系統相關命令)

python呼叫linux命令 舉例說明: 1.os.system(command)呼叫系統命令 Linux : >>>import os    //必須加  否則報錯 >>>os.system("ls") windows DOS: &g

ArcGIS API for JavaScript學習1:第一個地圖

樣式表 參數 資源 charset 底層 arcgis 順序 api navi 1.簡介 ArcGIS API for JavaScript跟隨ArcGIS 9.3同時發布,是ESRI根據JavaScript技術實現的調用ArcGIS Server REST API接口的一

腳本學習1列出一組IP內所有活動主機

cat -c spa ash 活動 pin null status amp 1、用ping命令編寫腳本來查詢一組IP地址同時檢查他們是否處於活動狀態 1 [zhi@centos7 ~]$ vi CheckHostStatus.sh 2 [zhi@centos7 ~]$

Ardupilot chibios編譯,啟動,main函式學習2

目錄 文章目錄 目錄 摘要 1. Chibios編譯過程 2. Chibios啟動程式碼 1.startup_stm32f7xx.mk檔案 1.crt1.c 1.核心初始化函式

轉載Numpy學習1——陣列填充np.pad()函式的應用

  【時間】2018.11.02 【題目】(轉載)Numpy學習——陣列填充np.pad()函式的應用 概述 本文轉載自 http://www.th7.cn/Program/Python/201712/1284487.shtml ,主要講述了陣

Linux和Windows系統的遠端桌面訪問知識轉載

為新手講解Linux和Windows系統的遠端桌面訪問知識   很多新手都是使用Linux和Windows雙系統的,它們之間的遠端桌面訪問是如何連線的,我們就為新手講解Linux和Windows系統的遠端桌面訪問知識,包括所使用的軟體及方法。本文所使用

Windows系統如何使用MongoDB資料庫恢復匯入GHTorrent下載的bson檔案

剛剛轉到MongoDB資料庫的使用,一切都不熟悉,匯入一個現成的檔案都花費很多時間,圖書館也借了一些書,都沒有最終解決問題。最無語的是在MongoDB中把一條記錄稱之為文件。這讓我差點崩潰。接下來把我整理的匯入bson檔案的步驟一一介紹給大家。 一、進入到MongoDB的安裝路徑 注意,

高等數學學習1-函式

1.1實數1.1.1 集合具有某種屬性的事務的全體成為集合集合的表示方法:1)列舉法(列出每一個元素);2)說明法(說明元素共有的特性,這種說明需要能概括所有的元素,且不能包含其他元素)。1.1.2 實數集(1)實數集R:有理數集(R)+無理數集(2)有理數特性:1)有序性(

深入理解計算機系統學習1

原始檔:0, 1 組成每行以一個看不見的’\n’結尾, 執行一個原始檔分四個階段:預處理, 編譯,彙編,連線 .i 檔案:.c檔案預處理後生成 .ii檔案: .cpp檔案預處理後生成 預處理階段:前處理器(cpp)根據以#開頭的命

輸入m個學生,每個學生有4門課,在主調函式中輸入學生的相關資訊,編寫三個函式(1)求第一門課的平均分; 2找出有兩門課以上不及格的學生,並輸出他們的學號和全部成績,要求用指標函式實現:fl

  輸入m個學生,每個學生有4門課,在主調函式中輸入學生的相關資訊,編寫三個函式: (1)求第一門課的平均分; (2)找出有兩門課以上不及格的學生,並輸出他們的學號和全部成績,要求用指標函式實現:float*Search(float(*p)[4],int n); (3)找出

儲存過程中用到的各種函式學習

1.%type和%rowtype %type是用來宣告一個變數和指定表的column一樣的資料型別 例子如下: 需要加.哦 v_EmpName emp.ename%TYPE; 這樣一來v_EmpName和emp.ename的型別一樣了%ROWTYPE用來宣告一個

網易雲音樂推薦系統學習1

音樂推薦的如下特點。物品空間大 物品數很多,物品空間很大,這主要是相對於書和電影而言。消費每首歌的代價很小 對於線上音樂來說,音樂都是免費的,不需要付費。物品種類豐富 音樂種類豐富,有很多的流派。聽一首歌耗時很少 聽一首音樂的時間成本很低,不太浪費使用者的時間,而且使用者大都把音樂作為背景聲音,同時進行其他工

TensorFlow 入門 第一課--基本函式學習2:tf.nn.conv2d 、tf.contrib.layers.flatten、tf.nn.max_pool 詳解

Tensorflow 提供了一些內建的API實現了CNN網路結構中的卷積,池化,全連線網路等運算操作。tf.nn.conv2d(input,filter, strides, padding, data_

windows系統下Python環境的搭建-

<div class="postBody"> <div id="cnblogs_post_body"><p><span style="color:black; font-family:微軟雅黑; font

busybox檔案系統與簡單驅動學習1-busybox檔案系統搭建與nfs掛載配置

一、busybox編譯安裝 2、參考資料:訊為4412精英版開發手冊9.5章節 3、實際操作環境:Ubuntu14.04、交叉編譯環境 arm-none-linux-gnueabi-(直接用訊為提供的,也可以網上用其他的)、busybox版本

caffe學習1------windows下基於GPU配置

最近準備用caffe做圖片的分類,可配置caffe就讓我折騰了大半個月,一直配置不成功,最後還是參考官網的tutorial才配置成功,於是決定把配置的過程寫下來,如果後面有朋友配置caffe遇到什麼問題,還可以參考參考。 首先貼出官方的配置caffe的工程:https://

OpenCV計算機視覺學習1——影象基本操作影象視訊讀取,ROI區域擷取,常用cv函式解釋

1,計算機眼中的影象   我們開啟經典的 Lena圖片,看看計算機是如何看待圖片的:    我們點選圖中的一個小格子,發現計算機會將其分為R,G,B三種通道。每個通道分別由一堆0~256之間的數字組成,那OpenCV如何讀取,處理圖片呢,我們下面詳細學習。 2,影象的載入,顯示和儲存   我們看