8

私は何週間もこれに対する解決策を探してきました。Windows PC に接続されているストレージ メディアを一意に識別する方法を探しています。特に記憶媒体。これには、内蔵ハード ドライブ、外付けハード ドライブ、フラッシュ ドライブ、SD カード、スマートフォン ストレージなどが含まれます。光学メディアは使用できません。

基本的に私がやりたいことは、特定のストレージ デバイスに関連付けられたある種の一意の文字列を指定することです。そのため、そのストレージ デバイスが再接続されるたびに、ドライブ文字に関係なく自動検出されます。

私が遭遇した問題:

  • すべてのストレージ デバイスにシリアル番号があるわけではありません
  • SD カードがカード リーダーを介してアクセスされる場合、クラスを介して WMI を介して利用可能な情報ManagementObjectSearcherは、メディアではなくカード リーダーに関連しています。

一意の情報を返すことができる 4 つの主要なプロパティがあるようですが、常にそうとは限りません。 SerialNumberCaptionPNPDeviceIDSignature

確かに、このようなストレージ デバイスを追跡するために Windows が行う何かがあるに違いありません。何か案は?

4

1 に答える 1

2

これらのメディアに書き込めますか? もしそうなら、GUID を含むルート ディレクトリにファイルを作成し、その GUID への参照をアプリに保存してみてはいかがでしょうか。GUID および一意性が保証されているため、このファイルを使用してボリュームを一意に識別できます。

于 2013-10-05T20:25:55.930 に答える