お試しソフトを作りたいのですが、期限切れになったら再インストールしても利用できないようする方法を教えてください。
どこかに足跡を残さなくてはならないと思うのですが、
レジストリ[HKEY_LOCAL_MACHINE\SOFTWARE]等ではバレバレですし、どういった隠し場所・方法がありますか?
実際に実装した方法を紹介してください。
または参考となるURLをお願いします。
※ネット接続してアクティベートのようなのは考えていません。
内容は逆の立場で書かれていますが・・・。
http://hamq.jp/stdB.cfm?i=674367463&pn=5
こんなところでしょうか。
以前、ドングルを使うソフトを開発した際はドングル内の不揮発性領域に書いたりもしましたが、
今回はそんな大げさなものはいらないんですよね?
何かの参考になれば。
サンプルはさすがに見つからなかったのですが(そもそも言語も指定されてませんし)、
HDDのMBR(マスターブートレコード)に情報を書き込む方法が強力だと思います。
http://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%B9%E3%82%BF%E3%83%B...
ハード(HDD)に依存するので、OSの再インストール等にも対応できます。
ただし、OSやハードについての相当な知識が必要と思われます。
不具合があった場合に責任を負わされるリスクを考えると、ネット接続で認証するのが一番簡単かつ安全だと思います。
そういったサービスを利用する方法もあります。
あるいは利用者にMACアドレスを一度だけ送信してもらって、それと対になったキーファイル(有効期限情報等を含む)を返送するとかどうでしょうか。
回答ありがとうございます。
>HDDのMBR・・・リスク・・・
そこまでするのであれば、アクティベートを検討するのですが、もう少し工夫ができれば良いと考えています。
会社ではなく個人でシェアウェア的に配布するのなら、機能制限版をフリーにして、フル版を購入者のみにするのがよいのでは。
フリー版をデータを数件しか処理できないとか連続して10分しか使えないとか、本当にお試しにすれば効果があると思います。
あまりガチガチにやると、労力のわりに報われません。
非常に多数の人が使っている某有名なソフトでもアクティベートまではやっていませんし、使用制限の解除方法も出回っています。
それでも作者に対して「お金を払いたい」と思わせるだけのソフトを作れば、結果はついてくると思います。
またビジネスにするなら素直にアクティベートにしてはいかがでしょうか。
http://ja.wikipedia.org/wiki/%E3%82%B7%E3%82%A7%E3%82%A2%E3%82%A...
回答ありがとうございます。
姑息な手段でユーザのPCにゴミを残すの気も引けます。
安全の為にもフル機能でのおためし版は辞める方向で行こうと思います。
お試しソフトの期限をたとえば、2008/03/31までしか使えないように初めから作っておきます。
最悪ばれても、この日までしか使えないので、ガードがかかります。
あと、日付チェックは、起動時以外にも他のタイミングでもおこなうことをお勧めします。
-------
>レジストリ[HKEY_LOCAL_MACHINE\SOFTWARE]等ではバレバレですし
c:\windowsや、c:\windows\system とうにファイルを残すのと、レジストリと組み合わせて
使うようにすれば、強度があがります。
あと、簡単な方法をもうひとつ組み合わせると、同時に元の状態に戻せる確率が低くなり
そうなので、プログラム起動時に、一回インストールされたかどうかが分かるので、
そのタイミングで、レジストリが削除されてたらレジストリを、ファイルを削除されていたら
ファイルを復元しておきます。
-------
ソフトの値段はいくらか不明ですが、これだけでもかなりガードできるとは思いますが・・。
>日付チェックは、起動時以外にも
なるほど、この考えは参考になりました。実装しようと思います。
回答ありがとうございます。
はい。大げさに考えていません。
もう少し隠す事ができれば良いと考えています。