2

ユーザーが製品をインストールすると終了日がレジストリに保存される試用版を簡単に開発できます。アプリが実行されるとき、システムの日付が終了日以下であることを確認するたびに。はいの場合、アプリは実行されます。そうでない場合、アプリは製品を購入するためのメッセージを表示します。このようにして試用版を開発できますが、ユーザーがシステムの日付を変更してソフトウェアを実行したり、レジストリエントリを削除したりできるという問題が1つあります。大企業では、インターネット接続がない場合に単一のマシンで実行される試用版製品を開発するためにどのような対策が取られていますか。

誰かが業界標準のロジックを知っているなら、私と共有してください。

4

2 に答える 2

5

この手順は、多くの場合、 NETReactorDotfuscatorなどのサードパーティツールに委任されます。

これらのツール(およびその他のツール)は、コードを難読化するだけでなく、さまざまな程度のライセンス保護をサポートすることもできます。

たとえば、NET Reactorでは、アプリケーションを期限切れにするためのタイムアウトまたは実行回数を指定できます。その後、ライセンスファイルを配布して、アプリのロックを別の期間(または永続的に)解除できます。

Dotfuscatorには、実行時や例外が発生したときにアプリがサーバーにレポートを返すことができるいくつかの優れた機能があり、さまざまなライセンスモデルをサポートするだけでなく、アプリが実際にどのように動作しているかを知ることができます。

もちろん、顧客はアプリの「電話をかける」というアイデアを好むかもしれないし、好まないかもしれませんが、それがあなたが望むのであれば、ツールはそこにあります。

于 2011-05-03T18:02:13.417 に答える
2

サードパーティのツールにお金をかけたくない場合 (おそらくこれが最善の選択肢です)、終了日を格納するレジストリに何らかの暗号化された値を入れることをお勧めします。システムの実行に必要なキーを作成します。ソフトウェアを登録するときは、終了日をかなり先の日付 (3000 年など) にしてください。そうすれば、彼らはキーを削除できず、台無しにせずに手で変更することはできません。

最終的には、ますますトリッキーになる可能性がありますが、誰かがあなたの保護を回避する方法を見つけるでしょう. 制限付きのインストール (いくつかの機能のみ) を送信するか、保護することに対する報酬と比較して、保護にどれだけの労力を費やしたいかを把握してください。

于 2011-05-03T18:07:28.957 に答える