移动设备MAc地址
问题描述:
我有一个Windows移动项目。我想获取设备的MAC地址或数字以便安装我的软件。我的项目是在Windows Ce和Windows Mobile 6(两个项目)。我如何从移动设备获得价值? (我看起来同样的问题,但他们是关于蓝牙MAC地址和一些设备没有它)移动设备MAc地址
答
调用GetAdaptersInfo
API。它返回一个IP_ADAPTER_INFO
,它是设备适配器所有信息的缓冲区。 IP_ADAPTER_INFO
包含一个名为Address
的成员,它是适配器的MAC地址。
答
因为我花了很多时间来找到一个VB.NET的方式,所以我发布这个任何可能有用的。
<DllImport("iphlpapi.dll", SetLastError:=True)> _
Public Shared Function GetAdaptersInfo(ByVal info As Byte(), ByRef size As UInteger) As Integer
End Function
Public Shared Function GetMacAddress() As String
Dim num As UInteger = 0UI
GetAdaptersInfo(Nothing, num)
Dim array As Byte() = New Byte(CInt(num) - 1) {}
Dim adaptersInfo As Integer = GetAdaptersInfo(array, num)
If adaptersInfo = 0 Then
Dim macAddress As String = ""
Dim macLength As Integer = BitConverter.ToInt32(array, 400)
macAddress = BitConverter.ToString(array, 404, macLength)
macAddress = macAddress.Replace("-", ":")
Return macAddress
Else
Return ""
End If