【问题标题】:How can I uniquely identify a USB key from C#?如何从 C# 中唯一地识别 USB 密钥?
【发布时间】:2010-10-11 10:45:41
【问题描述】:

我希望能够检测 USB 密钥何时插入。此外,如果我能区分 USB 密钥 A 和 USB 密钥 B,那么我的状态会更好。最后,如果我可以使用某种硬件序列号、MAC 地址或其他任何东西来唯一地识别密钥,那么我的状态就最好了。

基本上,我正在考虑使用 USB 密钥作为硬件加密狗来“解锁”我的 C# 应用程序。

【问题讨论】:

    标签: c# windows


    【解决方案1】:

    所有硬盘都有一个序列号,USB 闪存驱动器也不例外。这是一篇带有示例项目的文章,其中显示了how to get the non-volatile serial number。基本上你只需要枚举系统驱动器并获取 PNPDeviceID 属性。

    【讨论】:

    • 谢谢,非常适合获取连续剧。我不认为我可以“幸运”两次并了解一种在将驱动器添加到系统时获取事件通知的方法?
    • 其实这里有一个相关的问题,看起来像我要找的:stackoverflow.com/questions/271907/…>
    【解决方案2】:

    您需要检索密钥的Hardware ID。

    我不知道如何订阅插件事件,但您也可以随时让用户点击按钮。

    【讨论】:

    • 我相信每次 Windows 格式化 USB 驱动器时都会更改卷序列号。有一个单独的序列号,它是非易失性的,可能更好用。
    【解决方案3】:

    硬盘 ID 不是唯一的。也许理论上是这样,但实际上并非如此。这是没有任何破解、模拟器或任何特殊程序的。

    【讨论】:

      猜你喜欢
      • 2018-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-10
      • 1970-01-01
      • 2020-05-30
      • 1970-01-01
      相关资源
      最近更新 更多