2011-11-11 13 views
1

単純なコピープロテクション目的のために、私は現在のコンピュータを一意に識別するために小さいstringまたはintの値を生成したいと思います。理想的には、この値は単純なハードウェア周辺機器の変更後、またはWindowsを完全に再インストールした後でも変更されません。安定したマシンIDを得る方法**なし**管理者権限なし

ここや他の場所で見つかった答えのほとんどは、三つの主要な理由のために不十分である:

  1. 提示のコードはC#に簡単に移植できません。
  2. 推奨されるハードウェアの値は、プロセッサIDやハードドライブのシリアル番号など、使用できない/空の場合や、MACアドレスなどの不安定な場合があります。
  3. 関連するコードには管理者特権が必要です。

私はいくつかの記事を通じて検索で親切記事(How To Get Hardware Information)を見つけましたが、#3が、私の場合は重要な検討事項であることから、私はちょうど通常のユーザ権限で取得することができますどのようなハードウェア情報はわからないしています。

#2については、いくつかの異なる値を単に追加するのが最善の解決策ではないかと想像していますが、どちらの方法を使用しますか? C#コードが含まれている場合や、特にC#コードを指している場合は、何か助けてください。 :D

+0

また、「一意のハードウェアID」に基づくすべてのコピープロテクションスキームが障害のために破棄されると付け加えたいと思います。 – NullUserException

+0

@ NullUserExceptionఠ_ఠ - 私が読んだいくつかのスレッドは、MACアドレス(ここでは1つです)(http://stackoverflow.com/questions/3443093/what-is-a-good-unique-pc-identifier/ 3443149#3443149))、特に複数のNICを搭載したコンピュータでは(順序は任意です)。それが "失敗のために運命づけられた"(なぜなら、すべてのコピープロテクションがハック可能であるという事実を超えて)、なぜあなたが詳しく説明できますか?私は単にカジュアルコピーを制限しようとしています。つまり、ユーザーは自分のCDとキーを仲間に渡します。 – Jeremy

答えて

2

マシンを一意に特定することは、管理者だけを対象とした機能である可能性があるため、この基準を満たすのは難しいと思います。これが今の場合ではない場合、私はプライバシーの懸念が高まるにつれて時間が掛かると思います。

+0

それが本当なら、私の最善の選択肢は何ですか?インストールするマシンごとにGUIDを生成するだけですか? – Jeremy

+1

最終的にデジタル権利管理がどのように失われたのかについて書かれた多数の記事をお読みになることをお勧めします。ある程度のコピープロテクトが有益なことはありますが、あなたの質問の性質はあなたがそれをはるかに超えていることを示唆しています。私があなたの場合は、できるだけ簡単に購入し(主要なクレジットカードを受け入れて)、「なぜないの?レベル。 ValveのGabe Newellは、Steamの販売によって証明されるように、価格を大幅に下げることが実質的に高い収益をもたらす方法についていくつかのインタビューを行っています。 –

関連する問題