[解決済み] ユニークなマシンIDを生成する
2022-11-18 01:58:29
質問
Windows OSが動作するマシンに対して一意なidを生成する関数を書く必要があります。
現在、私は WMI を使用してさまざまなハードウェア パラメータを照会し、それらを結合してハッシュ化し、一意の ID を導出しています。私の質問は、使用すべき推奨パラメーターは何かということです。 現在、私は、バイオスCDのデータの組み合わせを使用して、一意のIDを生成しています。そして、各測定基準について複数の結果がある場合、最初の結果を使用しています。
しかし、2 つの異なる Windows OS にデュアルブートするマシンが、理想的には起こらないはずの、各 OS で異なるサイト コードを生成するという問題に遭遇しました。
参考までに、私が現在使用している測定基準は以下のとおりです。
Win32_Processor:UniqueID,ProcessorID,Name,Manufacturer,MaxClockSpeed
Win32_BIOS:Manufacturer
Win32_BIOS:SMBIOSBIOSVersion,IdentificationCode,SerialNumber,ReleaseDate,Version
Win32_DiskDrive:Model, Manufacturer, Signature, TotalHeads
Win32_BaseBoard:Model, Manufacturer, Name, SerialNumber
Win32_VideoController:DriverVersion, Name
どのように解決するのですか?
をパースして SMBIOS を自分で解析し、任意の長さにハッシュ化します。詳しくは PDF 仕様 を参照してください。
Windows から SMBIOS 情報を照会するには、次のようにします。
EnumSystemFirmwareEntries
,
EnumSystemFirmwareTables
そして
GetSystemFirmwareTable
.
IIRC では、CPUID 命令からの "unique id" は P3 およびそれ以降では非推奨です。
関連
-
[解決済み] ランダムでユニークな英数字の文字列を生成するには?
-
[解決済み】UUIDはどのようにユニークなのですか?
-
[解決済み] バッチファイルのアットマーク(@)とは何ですか、そして何をするのですか?
-
[解決済み] IE10はIE7モードでレンダリングされます。強制的に標準モードにする方法は?
-
[解決済み] WindowsのPATH環境変数がいっぱいにならないようにするにはどうしたらいいですか?
-
[解決済み] Windows の 'tail' コマンドに相当するもの [重複]。
-
[解決済み] 別のcmd.exeプロンプトから新しいcmd.exeウィンドウを作成する
-
[解決済み] 特定のファイルだけを含むディレクトリ構造をコピーする方法(Windowsのバッチファイルを使用)。
-
[解決済み] バッチファイルを使用してサービスが実行されているかどうかを確認し、実行されていない場合は開始するにはどうすればよいですか?
-
[解決済み] Windowsのドメインコントローラをプログラムで確認するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] パラメータ中の二重引用符のエスケープ
-
[解決済み] ダウンロードした.boxファイルをVagrantに追加するには?
-
[解決済み] Windowsのコマンドプロンプトでlsを作成する方法は?
-
[解決済み] 別のcmd.exeプロンプトから新しいcmd.exeウィンドウを作成する
-
[解決済み] 特定のファイルだけを含むディレクトリ構造をコピーする方法(Windowsのバッチファイルを使用)。
-
[解決済み] WindowsでJenkinsのサービスを開始/停止/再起動する
-
[解決済み] BATCHスクリプトでrandomを使用するには?
-
[解決済み] ActivePerlとStrawberry Perl for Windowsのどちらを選べばいいのでしょうか?重複
-
[解決済み] Git リポジトリを Windows でホスティングする
-
[解決済み] Windows標準の.iniファイルでは、コメントを書くことができますか?