- ベストアンサー
マシンの識別
Windowsのマシンを一意に識別する方法を探しています。 MACアドレスを使えば良いかとも思ったのですが、NICを持たない マシンでもとれる値が良いのです。 WMIを使えばよさそうなのですが、これで取れるBIOSのシリアル番号 (Win32_BIOSのSerialNumber?)というのはユニークな番号となる のでしょうか? でもこれだとBIOSをアップデートしたりしたら別の番号になりますか? 要は「この番号が違えば別のマシン、同じなら同じマシン」と言い切れる 番号が取れれば良いのですが… MSのサイトも探してみているのですが、それらしき情報にめぐり合えません。 どなたかご存知の方、「ここを見れば分かる」という情報でも結構ですので 教えていただけると助かります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
APIのGetVolumeInformationを使えば出来ます。 Declare Function GetVolumeInformation Lib "kernel32" Alias "GetVolumeInformationA" _ (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, _ ByVal nVolumeNameSize As Long, lpVolumeSerialNumber As Long, _ lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, _ ByVal nFileSystemNameSize As Long) As Long nVolumeSerialNumberを使います。
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
マイコンピュータのプロパティを表示したときに表示されるシリアルナンバーがマシンの識別に使えるのではないかと思います。 WMIでいうと http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/win32_operatingsystem.asp Win32_OperatingSystem クラスの SerialNumber プロパティ で取り出せます