.net不能获得【指定】网卡的信息,给个思路,先遍历所有网卡,然后找到你需要的的那个网卡的信息。
创新互联公司自2013年创立以来,先为宝山等服务建站,宝山等地企业,进行企业商务咨询服务。为宝山企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
Private Sub GetMyIP()
Dim strComputer As String
Dim objWMI As Object
Dim colIP As Object
Dim IP As Object
Dim I As Integer
strComputer = "."
objWMI = GetObject("winmgmts://" strComputer "/root/cimv2")
colIP = objWMI.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
For Each IP In colIP
If Not IsNothing(IP.IPAddress) Then
For I = LBound(IP.IPAddress) To UBound(IP.IPAddress)
MsgBox("IP 地址:" IP.IPAddress(I) Chr(10) _
"网卡类型:" IP.Description(I) Chr(10) _
"网卡地址:" IP.Macaddress(I))
Next
End If
Next
End Sub
出现这样的原因,大部分是由于 无线网卡没有安装到位,接触不良造成的。
网卡可以多插几次。如果这样,问题没有解决,带着您的笔记本找网卡服务商,如果他们解决不了,
那问题可能就在于笔记本本身。带着您的本本和卡找您的本本服务商。
'VB起用和禁用网络连接
OptionExplicit
PrivateConstNetConnect=H31
PrivateSubCommand1_Click()'停用本地连接
DimblnRelustAsBoolean
'把本地连接换成你要控制的本地连接的名字
blnRelust=ExcNetLinkMenu("本地连接","停用(B)")
'xp
IfblnRelustThen
Debug.Print"停用成功"
Else
blnRelust=ExcNetLinkMenu("本地连接","禁用(B)")
EndIf
IfblnRelustThen
Debug.Print"停用成功"
Else
Debug.Print"停用失败"
EndIf
EndSub
PrivateSubcommand2_Click()'启用本地连接
'把本地连接换成你要控制的本地连接的名字
DimblnRelustAsBoolean
blnRelust=ExcNetLinkMenu("本地连接","启用(A)")
IfblnRelustThen
Debug.Print"启用成功"
Else
Debug.Print"启用失败"
EndIf
EndSub
转自
如果是检查winsock的连接状态可以用,if winsock1.state=*
sckClosed 0 缺省的。关闭
sckOpen 1 打开
sckListening 2 侦听
sckConnectionPending 3 连接挂起
sckResolvingHost 4 识别主机
sckHostResolved 5 已识别主机
sckConnecting 6 正在连接
sckConnected 7 已连接
sckClosing 8 同级人员正在关闭连接
sckError 9 错误
*值得就是上述值的一个,然后在后面添加代码!例如要判断时候关闭,就可以
if winsock1.state=0 then msgbox "未连接!"
这样的没有连接就会弹出对话框了
有这个API,但是不是所有的网卡都支持【而且增加了CPU的压力】。VB的话有点不合适,毕竟无论是驱动级的控制还是API层的捕获,都是C,C++的。建议你自己仔细看看文档,了解一下其本质。--------------如果你要以此来了解一些网络控制诸如防火墙一类的开发,我建议你阅读一下人民邮电出版社的《Windows程序设计/C++》。这本书上有一套网络层流控的实例。当然,如果你坚持用VB,也可以,我帮不到什么忙。