文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

VB.NET中怎么获取网卡地址

2023-06-17 21:41

关注

本篇文章给大家分享的是有关VB.NET中怎么获取网卡地址,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

VB.NET获取网卡地址步骤:

在Visual Basic生成标准的EXE文件。缺省创建 Form1.

在Form1中添加一命令按钮,缺省名为Command1.

把下列代码放到Form1中说明部分。

Option Explicit   Private Const NCBASTAT = &H33   Private Const NCBNAMSZ = 16   Private Const HEAP_ZERO_MEMORY = &H8   Private Const HEAP_GENERATE_EXCEPTIONS = &H4   Private Const NCBRESET = &H32   Private Type NCB   ncb_command As Byte 'Integer   ncb_retcode As Byte 'Integer   ncb_lsn As Byte 'Integer   ncb_num As Byte ' Integer   ncb_buffer As Long 'String   ncb_length As Integer   ncb_callname As String * NCBNAMSZ   ncb_name As String * NCBNAMSZ   ncb_rto As Byte 'Integer   ncb_sto As Byte ' Integer   ncb_post As Long   ncb_lana_num As Byte 'Integer   ncb_cmd_cplt As Byte 'Integer   ncb_reserve(9) As Byte ' Reserved, must be 0   ncb_event As Long   End Type   Private Type ADAPTER_STATUS   adapter_address(5) As Byte 'As String * 6   rev_major As Byte 'Integer   reserved0 As Byte 'Integer   adapter_type As Byte 'Integer   rev_minor As Byte 'Integer   duration As Integer   frmr_recv As Integer   frmr_xmit As Integer   iframe_recv_err As Integer   xmit_aborts As Integer   xmit_success As Long   recv_success As Long   iframe_xmit_err As Integer   recv_buff_unavail As Integer   t1_timeouts As Integer   ti_timeouts As Integer   Reserved1 As Long   free_ncbs As Integer   max_cfg_ncbs As Integer   max_ncbs As Integer   xmit_buf_unavail As Integer   max_dgram_size As Integer   pending_sess As Integer   max_cfg_sess As Integer   max_sess As Integer   max_sess_pkt_size As Integer   name_count As Integer   End Type    Private Type NAME_BUFFER   name As String * NCBNAMSZ   name_num As Integer   name_flags As Integer   End Type   Private Type ASTAT   adapt As ADAPTER_STATUS   NameBuff(30) As NAME_BUFFER   End Type    Private Declare Function Netbios Lib "netapi32.dll" (pncb As NCB) As Byte   Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _  (hpvDest As Any, ByVal hpvSource As Long, ByVal cbCopy As Long)   Private Declare Function GetProcessHeap Lib "kernel32" () As Long   Private Declare Function HeapAlloc Lib "kernel32" _   (ByVal hHeap As Long, ByVal dwFlags As Long, _   ByVal dwBytes As Long) As Long   Private Declare Function HeapFree Lib "kernel32" (ByVal hHeap As Long,_   ByVal dwFlags As Long, lpMem As Any) As Long

把下面的代码放入Command1_Click的事件中:

Private Sub Command1_Click()   Dim myNcb As NCB   Dim bRet As Byte   myNcb.ncb_command = NCBRESET   bRet = Netbios(myNcb)   myNcb.ncb_command = NCBASTAT   myNcb.ncb_lana_num = 0   myNcb.ncb_callname = "* "   Dim myASTAT As ASTAT, tempASTAT As ASTAT   Dim pASTAT As Long   myNcb.ncb_length = Len(myASTAT)   Debug.Print Err.LastDllError   pASTAT = HeapAlloc(GetProcessHeap(), HEAP_GENERATE_EXCEPTIONS _   Or HEAP_ZERO_MEMORY, myNcb.ncb_length)   If pASTAT = 0 Then   Debug.Print "memory allcoation failed!"   Exit Sub   End If   myNcb.ncb_buffer = pASTAT   bRet = Netbios(myNcb)   Debug.Print Err.LastDllError   CopyMemory myASTAT, myNcb.ncb_buffer, Len(myASTAT)   MsgBox Hex(myASTAT.adapt.adapter_address(0)) & " " & _   Hex(myASTAT.adapt.adapter_address(1)) _   & " " & Hex(myASTAT.adapt.adapter_address(2)) & " " _   & Hex(myASTAT.adapt.adapter_address(3)) _   & " " & Hex(myASTAT.adapt.adapter_address(4)) & " " _   & Hex(myASTAT.adapt.adapter_address(5))   HeapFree GetProcessHeap(), 0, pASTAT   End Sub

按F5,运行该程序。

点击Command1。注意,VB.NET获取网卡地址将在一信息框中显示出来。

以上就是VB.NET中怎么获取网卡地址,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯