激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - 易語言 - 易語言調(diào)用api枚舉網(wǎng)卡名稱并且獲取信息的代碼

易語言調(diào)用api枚舉網(wǎng)卡名稱并且獲取信息的代碼

2022-02-17 19:18易語言源碼教程 易語言

今天小編就為大家分享一篇關(guān)于易語言調(diào)用api枚舉網(wǎng)卡名稱并且獲取信息的代碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

DLL命令表

?
1
2
3
4
5
6
7
8
9
10
.版本 2
.DLL命令 GetProcAddress, 整數(shù)型, "kernel32", "GetProcAddress", , 返回函數(shù)地址
  .參數(shù) hModule, 整數(shù)型
  .參數(shù) lpProcName, 文本型
.DLL命令 GetModuleHandle, 整數(shù)型, "kernel32", "GetModuleHandleA", , 獲取一個應(yīng)用程序或動態(tài)鏈接庫的模塊句柄 如執(zhí)行成功成功,則返回模塊句柄。零表示失敗。會設(shè)置GetLastError
  .參數(shù) lpModuleName, 文本型, , 指定模塊名,這通常是與模塊的文件名相同的一個名字。例如,NOTEPAD.EXE程序的模塊文件名就叫作NOTEPAD;
.DLL命令 IsBadCodePtr, 整數(shù)型, "kernel32", "IsBadCodePtr", , 確定讀指針的合法性
  .參數(shù) lpfn, 整數(shù)型
.DLL命令 LoadLibrary, 整數(shù)型, "kernel32", "LoadLibraryA", , 載入指定的動態(tài)鏈接庫,并將它映射到當(dāng)前進(jìn)程使用的地址空間。一旦載入,即可訪問庫內(nèi)保存的資源 成功則返回庫模塊的句柄,零表示失敗。會設(shè)置GetLastError
  .參數(shù) lpLibFileName, 文本型, , 指定要載入的動態(tài)鏈接庫的名稱。采用與CreateProcess函數(shù)的lpCommandLine參數(shù)指定的同樣的搜索順序;

常量數(shù)據(jù)表

?
1
2
3
4
5
6
7
8
9
10
11
12
.版本 2
.常量 ERROR_BUFFER_OVERFLOW, "111", , 111
.常量 ERROR_SUCCESS, "0", , 0L
.常量 MIB_IF_TYPE_ETHERNET, "6", , 以太網(wǎng)接口
.常量 MIB_IF_TYPE_FDDI, "15", , 15
.常量 MIB_IF_TYPE_LOOPBACK, "24", , 24
.常量 MIB_IF_TYPE_OTHER, "1", , 其他類型的網(wǎng)絡(luò)接口
.常量 MIB_IF_TYPE_PPP, "23", , PPP(點(diǎn)到點(diǎn)協(xié)議)網(wǎng)絡(luò)接口
.常量 MIB_IF_TYPE_SLIP, "28"
.常量 MIB_IF_TYPE_TOKENRING, "9"
.常量 MIB_IF_TYPE_IEEE80211, "71", , IEEE 802.11 wireless network interface
.常量 ERROR_INSUFFICIENT_BUFFER, "122", , 122

獲取網(wǎng)卡的IP地址、MAC等信息代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
.版本 2
.程序集 網(wǎng)卡操作程序集
.子程序 彗星取網(wǎng)卡信息, 整數(shù)型, 公開, 獲取網(wǎng)卡的IP地址、MAC等信息。
.參數(shù) 網(wǎng)卡信息數(shù)組, NetworkCardInfo, 參考 數(shù)組
.局部變量 MapList, NetworkCardMapName, , "0"
.局部變量 AdapterInfo, IP_ADAPTER_INFO
.局部變量 BufBin, 字節(jié)集
.局部變量 pAda, 整數(shù)型
.局部變量 nSize, 整數(shù)型
.局部變量 nBufLen, 整數(shù)型
.局部變量 nResult, 整數(shù)型
.局部變量 pAddr, 整數(shù)型
.局部變量 ipAddr, IP_ADDR_STRING
.局部變量 strTmp, 文本型
.局部變量 strMac, 文本型
.局部變量 Card, NetworkCardInfo
.局部變量 i, 整數(shù)型
清除數(shù)組 (網(wǎng)卡信息數(shù)組)
GetAdapterFriendlyName (MapList)
' //--------------------------------------------------
nResult = GetAdaptersInfo_Ptr (0, nBufLen)
.如果真 (nResult = #ERROR_BUFFER_OVERFLOW)
  BufBin = 取空白字節(jié)集 (nBufLen)
  pAda = GetPtr_Bin (BufBin, BufBin, 0)
  nResult = GetAdaptersInfo_Ptr (pAda, nBufLen)
  .如果真 (#ERROR_SUCCESS = nResult)
    nSize = LocalSize_IP_ADAPTER_INFO (AdapterInfo)
    .判斷循環(huán)首 (pAda ≠ 0)
      CopyMemory_P2IP_ADAPTER_INFO (AdapterInfo, pAda, nSize)
      Card.strName = 到文本 (AdapterInfo.AdapterName) ' //網(wǎng)卡名稱
      Card.strDescription = 到文本 (AdapterInfo.Description) ' //網(wǎng)卡描述
      Card.nType = AdapterInfo.Type ' //網(wǎng)卡類型
      Card.strType = GetAdapterInfoType (AdapterInfo.Type)
      ' //取出MAC地址
      Card.strMac = “”
      .計次循環(huán)首 (AdapterInfo.AddressLength - 1, i)
        .如果真 (i > 1)
          Card.strMac = Card.strMac + “-”
        .如果真結(jié)束
        .如果真 (AdapterInfo.Address [i] ≤ 16)
          Card.strMac = Card.strMac + “0”
        .如果真結(jié)束
        Card.strMac = Card.strMac + 取十六進(jìn)制文本 (AdapterInfo.Address [i])
      .計次循環(huán)尾 ()
      ' //取出IP地址和子網(wǎng)掩碼
      ipAddr = AdapterInfo.IpAddressList
      .循環(huán)判斷首 ()
        Card.strIP = 到文本 (ipAddr.IpAddress)
        Card.strMask = 到文本 (ipAddr.IpMask)
        跳出循環(huán) () ' //只取一個
        pAddr = ipAddr.Next
        .如果真 (pAddr ≠ 0)
          CopyMemory_IP_ADDR_STRING (ipAddr, pAddr, LocalSize_IP_ADDR_STRING (ipAddr))
        .如果真結(jié)束
      .循環(huán)判斷尾 (pAddr ≠ 0)
      ' //取出
      ipAddr = AdapterInfo.GatewayList
      .循環(huán)判斷首 ()
        Card.strGateway = 到文本 (ipAddr.IpAddress)
        跳出循環(huán) ()
        pAddr = ipAddr.Next
        .如果真 (pAddr ≠ 0)
          CopyMemory_IP_ADDR_STRING (ipAddr, pAddr, LocalSize_IP_ADDR_STRING (ipAddr))
        .如果真結(jié)束
      .循環(huán)判斷尾 (pAddr ≠ 0)
      ' //取出DNS服務(wù)器
      GetDnsServer (AdapterInfo.Index, Card.strDNS1, Card.strDNS2)
      ' //--------------------------------------------------
      .計次循環(huán)首 (取數(shù)組成員數(shù) (MapList), i)
        .如果真 (MapList [i].strGUID = Card.strName)
          Card.strFriendName = MapList [i].strFriendName
          跳出循環(huán) ()
        .如果真結(jié)束
      .計次循環(huán)尾 ()
      ' //--------------------------------------------------
      加入成員 (網(wǎng)卡信息數(shù)組, Card)
      pAda = AdapterInfo.Next
    .判斷循環(huán)尾 ()
  .如果真結(jié)束
.如果真結(jié)束
' //--------------------------------------------------
返回 (取數(shù)組成員數(shù) (網(wǎng)卡信息數(shù)組))
.子程序 GetAdapterFriendlyName, , , 通過mprapi庫獲取連接名稱
.參數(shù) MapList, NetworkCardMapName, 數(shù)組
.局部變量 hMprConfig
.局部變量 dwBufferSize
.局部變量 BufferBin, 字節(jié)集
.局部變量 plfTable, 整數(shù)型
.局部變量 FaceInfo, IP_INTERFACE_INFO
.局部變量 Adapter, IP_ADAPTER_INDEX_MAP, , "0"
.局部變量 szMapName, 字節(jié)集
.局部變量 szFriendName, 字節(jié)集
.局部變量 nSize, 整數(shù)型
.局部變量 dwRet
.局部變量 i, 整數(shù)型
.局部變量 nPos, 整數(shù)型
清除數(shù)組 (MapList)
' //-----------------------------------------------------------
dwRet = MprConfigServerConnect (0, hMprConfig) ' //獲得句柄
dwRet = GetInterfaceInfo (0, dwBufferSize) ' //獲得接口信息表大小
.如果真 (dwRet = #ERROR_INSUFFICIENT_BUFFER)
  BufferBin = 取空白字節(jié)集 (dwBufferSize)
  plfTable = GetPtr_Bin (BufferBin, BufferBin, 0)
  dwRet = GetInterfaceInfo (plfTable, dwBufferSize) ' //獲得接口信息
  nSize = LocalSize_IP_INTERFACE_INFO (FaceInfo)
  CopyMemory_P2IP_INTERFACE_INFO (FaceInfo, plfTable, nSize)
  .如果真 (FaceInfo.NumAdapters > 0)
    重定義數(shù)組 (Adapter, 假, FaceInfo.NumAdapters)
    nSize = FaceInfo.NumAdapters × LocalSize_IP_ADAPTER_INDEX_MAP (Adapter [1])
    .如果真 (nSize > dwBufferSize)
      nSize = dwBufferSize
    .如果真結(jié)束
    CopyMemory_P2IP_ADAPTER_INDEX_MAP_Array (Adapter, plfTable + 4, nSize)
    重定義數(shù)組 (MapList, 假, FaceInfo.NumAdapters)
    .計次循環(huán)首 (FaceInfo.NumAdapters, i)
      szMapName = 到字節(jié)集 (Adapter [i].Name)
      szFriendName = 取空白字節(jié)集 (256)
      MprConfigGetFriendlyName (hMprConfig, szMapName, szFriendName, 255)
      MapList [i].Index = Adapter [i].Index
      MapList [i].strMapName = W2A (szMapName)
      MapList [i].strFriendName = W2A (szFriendName)
      MapList [i].strGUID = MapList [i].strMapName
      nPos = 尋找文本 (MapList [i].strGUID, “{”, , 假)
      .如果真 (nPos ≠ -1)
        MapList [i].strGUID = 取文本右邊 (MapList [i].strGUID, 取文本長度 (MapList [i].strGUID) - nPos + 1)
      .如果真結(jié)束
    .計次循環(huán)尾 ()
  .如果真結(jié)束
.如果真結(jié)束
.子程序 GetDnsServer, 邏輯型, , 通過GetPerAdapterInfo獲取指定網(wǎng)卡的DNS服務(wù)器
.參數(shù) nIndex, 整數(shù)型, , IP_ADAPTER_INFO.Index
.參數(shù) strDNS1, 文本型, 參考, 首選DNS服務(wù)器
.參數(shù) strDNS2, 文本型, 參考, 備用DNS服務(wù)器
.局部變量 PerAdapterInfo, IP_PER_ADAPTER_INFO
.局部變量 BufBin, 字節(jié)集
.局部變量 pAda, 整數(shù)型
.局部變量 nSize, 整數(shù)型
.局部變量 nBufLen, 整數(shù)型
.局部變量 nResult, 整數(shù)型
.局部變量 pAddr, 整數(shù)型
.局部變量 ipAddr, IP_ADDR_STRING
.局部變量 nCount, 整數(shù)型
strDNS1 = “”
strDNS2 = “”
' //--------------------------------------------------
nResult = GetPerAdapterInfo_Ptr (nIndex, 0, nBufLen)
.如果真 (nResult = #ERROR_BUFFER_OVERFLOW)
  BufBin = 取空白字節(jié)集 (nBufLen)
  pAda = GetPtr_Bin (BufBin, BufBin, 0)
  nResult = GetPerAdapterInfo_Ptr (nIndex, pAda, nBufLen)
  .如果真 (#ERROR_SUCCESS = nResult)
    nSize = LocalSize_IP_PER_ADAPTER_INFO (PerAdapterInfo)
    CopyMemory_P2IP_PER_ADAPTER_INFO (PerAdapterInfo, pAda, nSize)
    ipAddr = PerAdapterInfo.DnsServerList
    .循環(huán)判斷首 ()
      nCount = nCount + 1
      .判斷開始 (nCount = 1)
        strDNS1 = 到文本 (ipAddr.IpAddress)
      .判斷 (nCount = 2)
        strDNS2 = 到文本 (ipAddr.IpAddress)
      .默認(rèn)
      .判斷結(jié)束
      pAddr = ipAddr.Next
      .如果真 (pAddr ≠ 0)
        CopyMemory_IP_ADDR_STRING (ipAddr, pAddr, LocalSize_IP_ADDR_STRING (ipAddr))
      .如果真結(jié)束
    .循環(huán)判斷尾 (pAddr ≠ 0)
    返回 (真)
  .如果真結(jié)束
.如果真結(jié)束
' //--------------------------------------------------
返回 (假)
.子程序 GetAdapterInfoType, 文本型
.參數(shù) nType, 整數(shù)型
.判斷開始 (nType = #MIB_IF_TYPE_OTHER)
  返回 (“OTHER”)
.判斷 (nType = #MIB_IF_TYPE_ETHERNET)
  返回 (“ETHERNET”)
.判斷 (nType = #MIB_IF_TYPE_TOKENRING)
  返回 (“TOKENRING”)
.判斷 (nType = #MIB_IF_TYPE_FDDI)
  返回 (“FDDI”)
.判斷 (nType = #MIB_IF_TYPE_PPP)
  返回 (“PPP”)
.判斷 (nType = #MIB_IF_TYPE_LOOPBACK)
  返回 (“LOOPBACK”)
.判斷 (nType = #MIB_IF_TYPE_SLIP)
  返回 (“SLIP”)
.判斷 (nType = #MIB_IF_TYPE_IEEE80211)
  返回 (“IEEE80211”)
.默認(rèn)
  返回 (到文本 (nType))
.判斷結(jié)束

初始化模塊的代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
.版本 2
.程序集 程序集1
.子程序 _啟動子程序, 整數(shù)型, , 請在本子程序中放置易模塊初始化代碼
載入 (窗口1, , 假)
返回 (0)
.子程序 A2W, 字節(jié)集
.參數(shù) MultiByteStr, 文本型, 參考
.局部變量 len, 整數(shù)型
.局部變量 Returned, 字節(jié)集
len = MultiByteToWideChar (0, 0, MultiByteStr, -1, { }, 0)
Returned = 取空白字節(jié)集 ((len + 1) × 2)
MultiByteToWideChar (0, 0, MultiByteStr, -1, Returned, 取字節(jié)集長度 (Returned))
返回 (Returned)
.子程序 W2A, 文本型
.參數(shù) CharStr, 字節(jié)集
.局部變量 len, 整數(shù)型
.局部變量 Returned, 文本型
len = WideCharToMultiByte (1, 0, CharStr, -1, 字符 (0), 0, 字符 (0), 假)
Returned = 取空白文本 (len)
WideCharToMultiByte (1, 0, CharStr, -1, Returned, 取文本長度 (Returned), 字符 (0), 假)
返回 (Returned)

取網(wǎng)卡信息的代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
.版本 2
.支持庫 iext
.程序集 窗口程序集_窗口1
.子程序 _窗口1_創(chuàng)建完畢
.局部變量 網(wǎng)卡信息數(shù)組, NetworkCardInfo, , "0"
.局部變量 網(wǎng)卡數(shù)量, 整數(shù)型
.局部變量 網(wǎng)卡名稱, 文本型
.局部變量 i, 整數(shù)型
.局部變量 x, 整數(shù)型
樹型框1.清空 ()
網(wǎng)卡數(shù)量 = 彗星取網(wǎng)卡信息 (網(wǎng)卡信息數(shù)組)
.計次循環(huán)首 (取數(shù)組成員數(shù) (網(wǎng)卡信息數(shù)組), i)
  網(wǎng)卡名稱 = “網(wǎng)卡” + 到文本 (i) + “ ” + 網(wǎng)卡信息數(shù)組 [i].strFriendName
  x = 樹型框1.加入項目 (-1, 網(wǎng)卡名稱, 0, 0, , , )
  樹型框1.加入項目 (x, “連接名稱:” + 網(wǎng)卡信息數(shù)組 [i].strFriendName, , , , , )
  樹型框1.加入項目 (x, “網(wǎng)卡名稱:” + 網(wǎng)卡信息數(shù)組 [i].strName, , , , , )
  樹型框1.加入項目 (x, “網(wǎng)卡描述:” + 網(wǎng)卡信息數(shù)組 [i].strDescription, , , , , )
  樹型框1.加入項目 (x, “網(wǎng)卡類型:” + 網(wǎng)卡信息數(shù)組 [i].strType, , , , , )
  樹型框1.加入項目 (x, “MAC地址:” + 網(wǎng)卡信息數(shù)組 [i].strMac, , , , , )
  樹型框1.加入項目 (x, “IP地址:” + 網(wǎng)卡信息數(shù)組 [i].strIP, , , , , )
  樹型框1.加入項目 (x, “子網(wǎng)掩碼:” + 網(wǎng)卡信息數(shù)組 [i].strMask, , , , , )
  樹型框1.加入項目 (x, “網(wǎng)關(guān)地址:” + 網(wǎng)卡信息數(shù)組 [i].strGateway, , , , , )
  樹型框1.加入項目 (x, “首選DNS:” + 網(wǎng)卡信息數(shù)組 [i].strDNS1, , , , , )
  樹型框1.加入項目 (x, “備用DNS:” + 網(wǎng)卡信息數(shù)組 [i].strDNS2, , , , , )
  樹型框1.擴(kuò)展 (x)
.計次循環(huán)尾 ()

運(yùn)行結(jié)果:

易語言調(diào)用api枚舉網(wǎng)卡名稱并且獲取信息的代碼

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對服務(wù)器之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

延伸 · 閱讀

精彩推薦
  • 易語言易語言在畫板中寫出指定文本當(dāng)畫板中已滿會自動滾屏

    易語言在畫板中寫出指定文本當(dāng)畫板中已滿會自動滾屏

    今天小編就為大家分享一篇關(guān)于易語言在畫板中寫出指定文本當(dāng)畫板中已滿會自動滾屏,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,...

    易語言幫助手冊9092022-01-12
  • 易語言易語言生成exe文件的方法

    易語言生成exe文件的方法

    在本篇內(nèi)容中小編給大家分享的是關(guān)于易語言生成exe文件的方法知識點(diǎn),需要的朋友們參考下。...

    易語言教程網(wǎng)14792022-03-01
  • 易語言易語言關(guān)于程序進(jìn)程和線程的基礎(chǔ)知識

    易語言關(guān)于程序進(jìn)程和線程的基礎(chǔ)知識

    今天小編就為大家分享一篇關(guān)于易語言關(guān)于程序進(jìn)程和線程的基礎(chǔ)知識,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起...

    三葉資源網(wǎng)6662022-02-24
  • 易語言實例操作易語言載入窗口

    實例操作易語言載入窗口

    在本文中小編給大家整理的是關(guān)于易語言載入窗口的教程和步驟內(nèi)容,需要的可以跟著學(xué)習(xí)下...

    易語言教程網(wǎng)19162022-03-02
  • 易語言一步一步跟我學(xué)易語言之第二個易程序菜單設(shè)計

    一步一步跟我學(xué)易語言之第二個易程序菜單設(shè)計

    今天小編就為大家分享一篇關(guān)于的一步一步跟我學(xué)易語言之第二個易程序菜單設(shè)計,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要...

    易語言幫助手冊7092021-06-17
  • 易語言一步一步跟我學(xué)易語言之關(guān)于變量

    一步一步跟我學(xué)易語言之關(guān)于變量

    今天小編就為大家分享一篇關(guān)于一步一步跟我學(xué)易語言之關(guān)于變量,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨...

    易語言幫助手冊10822021-06-17
  • 易語言易語言設(shè)置進(jìn)度條邊框樣式的方法

    易語言設(shè)置進(jìn)度條邊框樣式的方法

    今天小編就為大家分享一篇關(guān)于易語言設(shè)置進(jìn)度條邊框樣式的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨...

    易語言幫助手冊4422022-01-20
  • 易語言易語言獲取指定磁盤的名稱

    易語言獲取指定磁盤的名稱

    今天小編就為大家分享一篇關(guān)于易語言獲取指定磁盤的名稱,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來...

    易語言幫助手冊12662022-01-04
主站蜘蛛池模板: 在线免费观看毛片 | 久草成人在线观看 | 欧美黄色大片免费观看 | 日本人乱人乱亲乱色视频观看 | 欧美人与性禽动交精品 | 超碰97最新| 亚洲人成网在线观看 | 成人毛片在线免费观看 | 一级黄色毛片播放 | 黄色网页在线观看 | 国产精品视频二区不卡 | 片在线观看 | 亚洲精品日韩欧美 | 中文日韩欧美 | 91九色网址 | 欧美www| 欧美 日韩 国产 在线 | 视频二区国产 | 白天操夜夜操 | 亚洲视频综合 | 久久99国产综合精品 | 深夜毛片免费看 | 综合精品 | 日本一级黄色毛片 | 72pao成人国产永久免费视频 | 国产精品视频免费看 | 国产亚洲精品久久久久久久软件 | 国产91在线播放九色 | 中国美女一级黄色片 | 在线看一区二区三区 | 亚洲一级片免费观看 | 日本网站在线播放 | 久久国产精品免费视频 | 国产欧美精品一区二区三区四区 | 午夜影院在线免费观看 | 污污网站入口 | 国产资源在线观看视频 | 91网站永久免费看 | 国产精品久久久久无码av | 一级α片 | 国产理论视频在线观看 |