2009-03-05 2 views
4

Я хотел бы иметь возможность обнаруживать, когда вставлен USB-ключ. Кроме того, если я могу различать USB-ключ A и USB-ключ B, то я в еще лучшей форме. Наконец, если я могу однозначно идентифицировать ключ, используя какой-то аппаратный серийный номер, MAC-адрес или что-то еще, тогда я в лучшей форме.Как я могу однозначно идентифицировать USB-ключ от C#?

В основном я рассматриваю использование ключа USB в качестве аппаратного ключа для «разблокировки» моего приложения C#.

ответ

7

Все жесткие диски имеют серийный номер, флэш-накопители USB ничем не отличаются. Вот статья с примерным проектом, который показывает how to get the non-volatile serial number. В основном вам просто нужно перечислить системные диски и захватить свойство PNPDeviceID.

+0

Спасибо, отлично работал для получения сериала. Я не думаю, что я мог бы получить «счастливый» дважды и узнать о способе получения уведомления о событии, когда диск добавлен в систему? – Erik

+0

На самом деле это связанный с этим вопрос, который выглядит так, как будто я ищу: нажмите Erik

0

Вам необходимо получить ключ Hardware ID.

Я не вижу, как подписаться на подключенное событие, но вы всегда можете нажать кнопку мыши.

+0

Я считаю, что числовое число изменяется каждый раз, когда USB-накопитель отформатирован Windows. Существует отдельный серийный номер, который является нелетучим и, вероятно, лучше использовать. –

0

Идентификатор жесткого диска не является уникальным. Возможно, теоретически это так, но на практике это не так. Это без трещины, эмулятора или любой специальной программы.

Смежные вопросы