首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Vb.NET设备唯一标识符Win10

Vb.NET设备唯一标识符Win10
EN

Stack Overflow用户
提问于 2021-04-27 14:44:55
回答 1查看 202关注 0票数 2

我试图在vb.net代码中获得一个设备唯一标识符。我试过了

代码语言:javascript
运行
复制
 Private Function SystemSerialNumber() As String
    Dim value As String = ""
    Dim baseBoard As ManagementClass = New ManagementClass("Win32_BaseBoard")
    Dim board As ManagementObjectCollection = baseBoard.GetInstances()
    If board.Count > 0 Then
     value = board(0)("SerialNumber")
    If value.Length > 0 Then value = value.Substring(2)
    End If
    Return value
 End Function

它可以在一些计算机上工作,但是板上没有序列号,它返回“默认字符串”或它们放进去的任何东西。甚至尝试了用Win32_Processor,有些有它,而另一些只是返回“被OE.M”lol填充

也尝试过,

代码语言:javascript
运行
复制
Private Function SystemSerialNumber() As String
    Dim value As String
    Dim q As New SelectQuery("Win32_bios")
    Dim search As New ManagementObjectSearcher(q)
    Dim info As New ManagementObject
    For Each info In search.Get
        value = info("SerialNumber").ToString
        Return value
    Next
End Function

但这也是一样的,有些设备拥有它,有些设备没有,只是返回默认字符串。

所以我现在尝试的是:

代码语言:javascript
运行
复制
Private Function SystemSerialNumber() As String
    Dim value As String
    value = Windows.System.Profile.SystemIdentification.GetSystemIdForPublisher()
End Function

但我在引用它的时候有困难。我试着导入Windows.System,但是它只给出了错误,找不到它。

另外,我在平板电脑上使用这个程序,包括windows10、笔记本电脑和台式机。

更新:我将按照Heinzi的建议使用。谢谢!还更改了变量名以使其更准确。

代码语言:javascript
运行
复制
    Private Function NetworkAdapterMacAddress() As String
    Dim McAddress As String
    Dim netadapter As ManagementClass = New ManagementClass("Win32_NetworkAdapterConfiguration")
    Dim mo As ManagementObject
    Dim adapter As ManagementObjectCollection = netadapter.GetInstances()
    For Each mo In adapter
        If mo.Item("IPEnabled") = True Then
            McAddress = mo.Item("MacAddress").ToString()
            Return McAddress
        End If
    Next
End Function
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-27 15:33:13

好吧,没有保证的ID可以唯一地识别每台PC (幸运的是,我可能会添加。隐私是一件好事)。

你最好的选择可能是

哦,从哲学的角度来看,你可能需要思考一下特修斯船

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67285367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档