web-dev-qa-db-ja.com

プログラムはどのようにコンピュータを認識しますか?

かなり基本的な質問ですが、インターネットのどこにも答えが見つかりませんでした。

基本的に、ソフトウェアはどのような方法でハードウェアを認識しますか?この良い例は、トライアルプログラムです。試用期間が終了すると、支払うように指示されます。一部の人にとっては、アンインストールしてから再インストールするだけで十分です。しかし、ほとんどの場合、このアプローチは機能しません。

基本的に以前のインストールのすべてのトレースが削除された場合、プログラムはどのようにコンピューターを認識しますか? (はい、プログラムのレジストリを削除しました)。

ありがとうございました

1
Mike94

ソフトウェアの作成者は、プログラムがすでにインストールされているかどうか、いつインストールされているかを特定する方法を見つけるのに多くの時間がかかります。また、通常、システムのさまざまな場所にトレースを配置します。

あるプログラムのテクニックを学んだ場合、そのテクニックは別のプログラムでは機能しない可能性があります。また、一部の開発者は他の開発者まで行きません。

プログラムを使用する前に、プログラムの登録を求められる場合があります。その場合、登録時に、ユーザーとインストールされているアプリケーションに関する情報がログに記録されることは明らかです。一部の情報はレジスタに配置され、検証のためにチェックされます。それを唯一のチェックとして使用する人もいるかもしれません。その場合、レジスタエントリを削除すると、カウントがゼロに戻ります。これは、一部のプログラムで機能します。

一部のプログラムは、レジストリに加えて、ユーザーが見ようとは思わない可能性のあるコンピューター上の他の秘密の場所を使用します。

多くのプログラムでは、そのプログラムで使用されている手法を理解するために何時間も費やす方がコストがかかる場合があります。あなたがあなたの時間の時間的価値またはあなたがあなたのためにそれを理解するために専門家に支払うかもしれないものを考えるならば、プログラムを公式に登録するために料金を支払うだけではるかに安いかもしれません。

開発者が5つのランダムな場所に何かを書き、一般の人々が5つを見つけた場合、次のバージョンでは10のランダムな場所を追加し、それらをさらに見つけにくくしようとする可能性があります。

ちなみに、過去にチェックしたプログラムは、実際にコンピュータ自体を使用していることは明らかです。クリーンドライブを配置してクリーンインストールを実行すると、プログラムが新規インストールとして最初からやり直されるためです。

したがって、誰かがプログラムを取り上げてそれを見つけた場合、あなたが見つけたものはおそらくその1つのプログラムでしか機能しないでしょう。あなたが理解できたその特定のプログラムの次のバージョンまたはセキュリティアップデートでさえそれが機能するという保証はありません。

2
L. D. James