91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

易語言調用api枚舉網卡名稱并且獲取信息的代碼

發布時間:2020-10-02 15:03:25 來源:腳本之家 閱讀:456 作者:易語言源碼教程 欄目:編程語言

DLL命令表

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

常量數據表

.版本 2
.常量 ERROR_BUFFER_OVERFLOW, "111", , 111
.常量 ERROR_SUCCESS, "0", , 0L
.常量 MIB_IF_TYPE_ETHERNET, "6", , 以太網接口
.常量 MIB_IF_TYPE_FDDI, "15", , 15
.常量 MIB_IF_TYPE_LOOPBACK, "24", , 24
.常量 MIB_IF_TYPE_OTHER, "1", , 其他類型的網絡接口
.常量 MIB_IF_TYPE_PPP, "23", , PPP(點到點協議)網絡接口
.常量 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

獲取網卡的IP地址、MAC等信息代碼

.版本 2
.程序集 網卡操作程序集
.子程序 彗星取網卡信息, 整數型, 公開, 獲取網卡的IP地址、MAC等信息。
.參數 網卡信息數組, NetworkCardInfo, 參考 數組
.局部變量 MapList, NetworkCardMapName, , "0"
.局部變量 AdapterInfo, IP_ADAPTER_INFO
.局部變量 BufBin, 字節集
.局部變量 pAda, 整數型
.局部變量 nSize, 整數型
.局部變量 nBufLen, 整數型
.局部變量 nResult, 整數型
.局部變量 pAddr, 整數型
.局部變量 ipAddr, IP_ADDR_STRING
.局部變量 strTmp, 文本型
.局部變量 strMac, 文本型
.局部變量 Card, NetworkCardInfo
.局部變量 i, 整數型
清除數組 (網卡信息數組)
GetAdapterFriendlyName (MapList)
' //--------------------------------------------------
nResult = GetAdaptersInfo_Ptr (0, nBufLen)
.如果真 (nResult = #ERROR_BUFFER_OVERFLOW)
  BufBin = 取空白字節集 (nBufLen)
  pAda = GetPtr_Bin (BufBin, BufBin, 0)
  nResult = GetAdaptersInfo_Ptr (pAda, nBufLen)
  .如果真 (#ERROR_SUCCESS = nResult)
    nSize = LocalSize_IP_ADAPTER_INFO (AdapterInfo)
    .判斷循環首 (pAda ≠ 0)
      CopyMemory_P2IP_ADAPTER_INFO (AdapterInfo, pAda, nSize)
      Card.strName = 到文本 (AdapterInfo.AdapterName) ' //網卡名稱
      Card.strDescription = 到文本 (AdapterInfo.Description) ' //網卡描述
      Card.nType = AdapterInfo.Type ' //網卡類型
      Card.strType = GetAdapterInfoType (AdapterInfo.Type)
      ' //取出MAC地址
      Card.strMac = “”
      .計次循環首 (AdapterInfo.AddressLength - 1, i)
        .如果真 (i > 1)
          Card.strMac = Card.strMac + “-”
        .如果真結束
        .如果真 (AdapterInfo.Address [i] ≤ 16)
          Card.strMac = Card.strMac + “0”
        .如果真結束
        Card.strMac = Card.strMac + 取十六進制文本 (AdapterInfo.Address [i])
      .計次循環尾 ()
      ' //取出IP地址和子網掩碼
      ipAddr = AdapterInfo.IpAddressList
      .循環判斷首 ()
        Card.strIP = 到文本 (ipAddr.IpAddress)
        Card.strMask = 到文本 (ipAddr.IpMask)
        跳出循環 () ' //只取一個
        pAddr = ipAddr.Next
        .如果真 (pAddr ≠ 0)
          CopyMemory_IP_ADDR_STRING (ipAddr, pAddr, LocalSize_IP_ADDR_STRING (ipAddr))
        .如果真結束
      .循環判斷尾 (pAddr ≠ 0)
      ' //取出
      ipAddr = AdapterInfo.GatewayList
      .循環判斷首 ()
        Card.strGateway = 到文本 (ipAddr.IpAddress)
        跳出循環 ()
        pAddr = ipAddr.Next
        .如果真 (pAddr ≠ 0)
          CopyMemory_IP_ADDR_STRING (ipAddr, pAddr, LocalSize_IP_ADDR_STRING (ipAddr))
        .如果真結束
      .循環判斷尾 (pAddr ≠ 0)
      ' //取出DNS服務器
      GetDnsServer (AdapterInfo.Index, Card.strDNS1, Card.strDNS2)
      ' //--------------------------------------------------
      .計次循環首 (取數組成員數 (MapList), i)
        .如果真 (MapList [i].strGUID = Card.strName)
          Card.strFriendName = MapList [i].strFriendName
          跳出循環 ()
        .如果真結束
      .計次循環尾 ()
      ' //--------------------------------------------------
      加入成員 (網卡信息數組, Card)
      pAda = AdapterInfo.Next
    .判斷循環尾 ()
  .如果真結束
.如果真結束
' //--------------------------------------------------
返回 (取數組成員數 (網卡信息數組))
.子程序 GetAdapterFriendlyName, , , 通過mprapi庫獲取連接名稱
.參數 MapList, NetworkCardMapName, 數組
.局部變量 hMprConfig
.局部變量 dwBufferSize
.局部變量 BufferBin, 字節集
.局部變量 plfTable, 整數型
.局部變量 FaceInfo, IP_INTERFACE_INFO
.局部變量 Adapter, IP_ADAPTER_INDEX_MAP, , "0"
.局部變量 szMapName, 字節集
.局部變量 szFriendName, 字節集
.局部變量 nSize, 整數型
.局部變量 dwRet
.局部變量 i, 整數型
.局部變量 nPos, 整數型
清除數組 (MapList)
' //-----------------------------------------------------------
dwRet = MprConfigServerConnect (0, hMprConfig) ' //獲得句柄
dwRet = GetInterfaceInfo (0, dwBufferSize) ' //獲得接口信息表大小
.如果真 (dwRet = #ERROR_INSUFFICIENT_BUFFER)
  BufferBin = 取空白字節集 (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)
    重定義數組 (Adapter, 假, FaceInfo.NumAdapters)
    nSize = FaceInfo.NumAdapters × LocalSize_IP_ADAPTER_INDEX_MAP (Adapter [1])
    .如果真 (nSize > dwBufferSize)
      nSize = dwBufferSize
    .如果真結束
    CopyMemory_P2IP_ADAPTER_INDEX_MAP_Array (Adapter, plfTable + 4, nSize)
    重定義數組 (MapList, 假, FaceInfo.NumAdapters)
    .計次循環首 (FaceInfo.NumAdapters, i)
      szMapName = 到字節集 (Adapter [i].Name)
      szFriendName = 取空白字節集 (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)
      .如果真結束
    .計次循環尾 ()
  .如果真結束
.如果真結束
.子程序 GetDnsServer, 邏輯型, , 通過GetPerAdapterInfo獲取指定網卡的DNS服務器
.參數 nIndex, 整數型, , IP_ADAPTER_INFO.Index
.參數 strDNS1, 文本型, 參考, 首選DNS服務器
.參數 strDNS2, 文本型, 參考, 備用DNS服務器
.局部變量 PerAdapterInfo, IP_PER_ADAPTER_INFO
.局部變量 BufBin, 字節集
.局部變量 pAda, 整數型
.局部變量 nSize, 整數型
.局部變量 nBufLen, 整數型
.局部變量 nResult, 整數型
.局部變量 pAddr, 整數型
.局部變量 ipAddr, IP_ADDR_STRING
.局部變量 nCount, 整數型
strDNS1 = “”
strDNS2 = “”
' //--------------------------------------------------
nResult = GetPerAdapterInfo_Ptr (nIndex, 0, nBufLen)
.如果真 (nResult = #ERROR_BUFFER_OVERFLOW)
  BufBin = 取空白字節集 (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
    .循環判斷首 ()
      nCount = nCount + 1
      .判斷開始 (nCount = 1)
        strDNS1 = 到文本 (ipAddr.IpAddress)
      .判斷 (nCount = 2)
        strDNS2 = 到文本 (ipAddr.IpAddress)
      .默認
      .判斷結束
      pAddr = ipAddr.Next
      .如果真 (pAddr ≠ 0)
        CopyMemory_IP_ADDR_STRING (ipAddr, pAddr, LocalSize_IP_ADDR_STRING (ipAddr))
      .如果真結束
    .循環判斷尾 (pAddr ≠ 0)
    返回 (真)
  .如果真結束
.如果真結束
' //--------------------------------------------------
返回 (假)
.子程序 GetAdapterInfoType, 文本型
.參數 nType, 整數型
.判斷開始 (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”)
.默認
  返回 (到文本 (nType))
.判斷結束

初始化模塊的代碼

.版本 2
.程序集 程序集1
.子程序 _啟動子程序, 整數型, , 請在本子程序中放置易模塊初始化代碼
載入 (窗口1, , 假)
返回 (0)
.子程序 A2W, 字節集
.參數 MultiByteStr, 文本型, 參考
.局部變量 len, 整數型
.局部變量 Returned, 字節集
len = MultiByteToWideChar (0, 0, MultiByteStr, -1, { }, 0)
Returned = 取空白字節集 ((len + 1) × 2)
MultiByteToWideChar (0, 0, MultiByteStr, -1, Returned, 取字節集長度 (Returned))
返回 (Returned)
.子程序 W2A, 文本型
.參數 CharStr, 字節集
.局部變量 len, 整數型
.局部變量 Returned, 文本型
len = WideCharToMultiByte (1, 0, CharStr, -1, 字符 (0), 0, 字符 (0), 假)
Returned = 取空白文本 (len)
WideCharToMultiByte (1, 0, CharStr, -1, Returned, 取文本長度 (Returned), 字符 (0), 假)
返回 (Returned)

取網卡信息的代碼

.版本 2
.支持庫 iext
.程序集 窗口程序集_窗口1
.子程序 _窗口1_創建完畢
.局部變量 網卡信息數組, NetworkCardInfo, , "0"
.局部變量 網卡數量, 整數型
.局部變量 網卡名稱, 文本型
.局部變量 i, 整數型
.局部變量 x, 整數型
樹型框1.清空 ()
網卡數量 = 彗星取網卡信息 (網卡信息數組)
.計次循環首 (取數組成員數 (網卡信息數組), i)
  網卡名稱 = “網卡” + 到文本 (i) + “ ” + 網卡信息數組 [i].strFriendName
  x = 樹型框1.加入項目 (-1, 網卡名稱, 0, 0, , , )
  樹型框1.加入項目 (x, “連接名稱:” + 網卡信息數組 [i].strFriendName, , , , , )
  樹型框1.加入項目 (x, “網卡名稱:” + 網卡信息數組 [i].strName, , , , , )
  樹型框1.加入項目 (x, “網卡描述:” + 網卡信息數組 [i].strDescription, , , , , )
  樹型框1.加入項目 (x, “網卡類型:” + 網卡信息數組 [i].strType, , , , , )
  樹型框1.加入項目 (x, “MAC地址:” + 網卡信息數組 [i].strMac, , , , , )
  樹型框1.加入項目 (x, “IP地址:” + 網卡信息數組 [i].strIP, , , , , )
  樹型框1.加入項目 (x, “子網掩碼:” + 網卡信息數組 [i].strMask, , , , , )
  樹型框1.加入項目 (x, “網關地址:” + 網卡信息數組 [i].strGateway, , , , , )
  樹型框1.加入項目 (x, “首選DNS:” + 網卡信息數組 [i].strDNS1, , , , , )
  樹型框1.加入項目 (x, “備用DNS:” + 網卡信息數組 [i].strDNS2, , , , , )
  樹型框1.擴展 (x)
.計次循環尾 ()

運行結果:

易語言調用api枚舉網卡名稱并且獲取信息的代碼

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。如果你想了解更多相關內容請查看下面相關鏈接

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

从江县| 建平县| 灌南县| 萝北县| 濉溪县| 会昌县| 康保县| 凤山市| 田阳县| 清河县| 合山市| 元氏县| 大埔区| 绥芬河市| 宕昌县| 土默特左旗| 堆龙德庆县| 井冈山市| 安顺市| 贵港市| 嘉禾县| 定南县| 聂荣县| 新晃| 通城县| 沂源县| 星座| 蒲城县| 白玉县| 诏安县| 扎赉特旗| 游戏| 河源市| 绥芬河市| 汉中市| 遂溪县| 普陀区| 象州县| 哈巴河县| 开江县| 盐城市|