您好,登錄后才能下訂單哦!
小編給大家分享一下易語言如何調用api獲取網卡信息網絡連接名,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
DLL命令表
.版本 2 .DLL命令 GetAdaptersInfo, 整數型, "IPHlpApi" .參數 IpAdapterInfo, 字節集 .參數 pOutBufLen, 整數型, 傳址 .DLL命令 取變量地址_字節集, 整數型, , "lstrcpynA" .參數 變量, 字節集, 傳址 .參數 變量, 字節集, 傳址 .參數 保留, 整數型, , 0 .DLL命令 CopyMemory_iai, , "kernel32", "RtlMoveMemory" .參數 Destination, IP_ADAPTER_INFO, 傳址 .參數 Source, 整數型 .參數 Length, 整數型 .DLL命令 CopyMemory_ias, , "kernel32", "RtlMoveMemory" .參數 Destination, IP_ADDR_STRING, 傳址 .參數 Source, IP_ADDR_STRING .參數 Length, 整數型 .DLL命令 GetPerAdapterInfo, 整數型, "IPHlpApi" .參數 IfIndex, 整數型 .參數 pPerAdapterInfo, 字節集 .參數 pOutBufLen, 整數型, 傳址 .DLL命令 CopyMemory_ipai, , "kernel32", "RtlMoveMemory" .參數 Destination, IP_PER_ADAPTER_INFO, 傳址 .參數 Source, 整數型 .參數 Length, 整數型
自定義數據類型表
.版本 2 .數據類型 IP_ADAPTER_INFO .成員 Next, 整數型 .成員 ComboIndex, 整數型 .成員 AdapterName, 字節型, , "260", 名稱 .成員 Description, 字節型, , "132", 描述 .成員 AddressLength, 整數型 .成員 Address, 字節型, , "8" .成員 Index, 整數型 .成員 Type, 整數型, , , 類型 .成員 DhcpEnabled, 整數型 .成員 CurrentIpAddress, 整數型 .成員 IpAddressList, IP_ADDR_STRING .成員 GatewayList, IP_ADDR_STRING .成員 DhcpServer, IP_ADDR_STRING .成員 HaveWins, 邏輯型 .成員 PrimaryWinsServer, IP_ADDR_STRING .成員 SecondaryWinsServer, IP_ADDR_STRING .成員 LeaseObtained, 整數型 .成員 LeaseExpires, 整數型 .數據類型 IP_ADDR_STRING .成員 Next, 整數型 .成員 IpAddress, 字節型, , "16", IP_ADDRESS_STRING .成員 IpMask, 字節型, , "16", IP_MASK_STRING=IP_ADDRESS_STRING .成員 Context, 整數型 .數據類型 網卡信息_ .成員 名稱, 文本型 .成員 連接名稱, 文本型 .成員 Mac, 文本型 .成員 Ip, 文本型 .成員 掩碼, 文本型 .成員 網關, 文本型 .成員 DNS1, 文本型 .成員 DNS2, 文本型 .數據類型 IP_PER_ADAPTER_INFO .成員 tmp, 整數型, , "3" .成員 CurrentDnsServer, IP_ADDR_STRING .成員 DnsServerList, IP_ADDR_STRING
取網卡信息網絡連接名的代碼
.版本 2 .程序集 窗口程序集1 .子程序 __啟動窗口_創建完畢 取網卡信息 () .子程序 取網卡信息 .局部變量 size_link, 整數型 .局部變量 AdapterInfo, IP_ADAPTER_INFO .局部變量 buf_link, 字節集 .局部變量 addr_link, 整數型 .局部變量 i, 整數型 .局部變量 mac, 文本型 .局部變量 tmp, 文本型 .局部變量 buf_ip, IP_ADDR_STRING .局部變量 link, 網卡信息_ .局部變量 size_dns, 整數型 .局部變量 dns, IP_PER_ADAPTER_INFO .局部變量 buf_dns, 字節集 .局部變量 addr_dns, 整數型 GetAdaptersInfo ({ 0 }, size_link) buf_link = 取空白字節集 (size_link) addr_link = 取變量地址_字節集 (buf_link, buf_link, 0) .如果真 (GetAdaptersInfo (buf_link, size_link) = 0) .循環判斷首 () CopyMemory_iai (AdapterInfo, addr_link, 640) link.名稱 = 到文本 (AdapterInfo.Description) mac = “” .計次循環首 (AdapterInfo.AddressLength - 1, i) tmp = 取十六進制文本 (AdapterInfo.Address [i]) mac = mac + 選擇 (tmp = “0”, “00”, tmp) + “-” .計次循環尾 () mac = 取文本左邊 (mac, 取文本長度 (mac) - 1) link.Mac = mac CopyMemory_ias (buf_ip, AdapterInfo.IpAddressList, 40) link.Ip = 到文本 (buf_ip.IpAddress) link.掩碼 = 到文本 (buf_ip.IpMask) CopyMemory_ias (buf_ip, AdapterInfo.GatewayList, 40) link.網關 = 到文本 (buf_ip.IpAddress) link.連接名稱 = 取文本注冊項 (4, “SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\” + 到文本 (AdapterInfo.AdapterName) + “\Connection\Name”, ) size_dns = GetPerAdapterInfo (AdapterInfo.Index, buf_dns, size_dns) buf_dns = 取空白字節集 (size_dns) addr_dns = 取變量地址_字節集 (buf_dns, buf_dns, 0) .如果 (GetPerAdapterInfo (AdapterInfo.Index, buf_dns, size_dns) = 0) CopyMemory_ipai (dns, addr_dns, 92) link.DNS1 = 到文本 (dns.CurrentDnsServer.IpAddress) link.DNS2 = 到文本 (dns.DnsServerList.IpAddress) .否則 link.DNS1 = “” link.DNS2 = “” .如果結束 網絡連接名組合框.加入項目 (link.連接名稱, ) 網絡連接名組合框.現行選中項 = i 輸出調試文本 (link.連接名稱) 輸出調試文本 (link.名稱) 輸出調試文本 (link.Mac) 輸出調試文本 (link.Ip) 輸出調試文本 (link.掩碼) 輸出調試文本 (link.網關) 輸出調試文本 (link.DNS1) 輸出調試文本 (link.DNS2) addr_link = AdapterInfo.Next .循環判斷尾 (addr_link ≠ 0) .如果真結束
運行結果:
看完了這篇文章,相信你對“易語言如何調用api獲取網卡信息網絡連接名”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。