システムに使用期限を設けるには

解決


yamada  2013-07-09 14:30:47  No: 44811  IP: 192.*.*.*

プログラムで使用期限を設けるには
皆様どうな手法を取られていますか?
2013年7月30日まで有効とか、
初回起動から30日有効とかそういった期限です。

期限が過ぎると起動できなくしたいです。

単純に初回起動日付を残しておいて、
システム日付を見てやろうと思いましたが、
日付変更の対策が思い浮かびませんでした。

どうかご教授お願いします。
よろしくお願いします。

編集 削除
monaa  2013-07-09 15:08:13  No: 44812  IP: 192.*.*.*

完璧な方法は存在しませんよ。
どの程度の相手を想定して、どの程度強固にするのかを
先ず決める必要があると思います。

私ならCRC付きリソースでも埋め込みます。
よくネトゲでやられている方法です。
日付変更はネットに繋げるなら時刻サーバーに独自接続で良い気がします。
さらに強固にするなら自分起動された時刻と終了時刻のログをとり矛盾がないか調査するのも手かもしれません。

逆アセンブリできるような人相手にはほとんど意味がありません。

編集 削除
DEKO  2013-07-09 23:00:51  No: 44813  IP: 192.*.*.*

Turbo Power OnGuard を使うとか。
http://sourceforge.net/projects/tponguard/
http://ht-deko.minim.ne.jp/ft1307.html#130701

編集 削除
ユウジ  2013-07-10 14:53:35  No: 44814  IP: 192.*.*.*

おそらくyamada さんは何らかのパッケージプログラムを作ってるんでしょうね。

もっと簡単な方法として...

プログラム終了時に指定されたテーブルに日時を書きこませ再稼動時に日時を比較させる方法です。

原始的な方法ですが私はこれでうまくいってます。

使用しているサーバーの日時を取得するなど色々な方法があると思いますがシンプルイズベストです。

編集 削除
yamada  2013-08-02 10:59:08  No: 44815  IP: 192.*.*.*

遅くなりました!申し訳ございません。

monaa様、DEKO様、ユウジ様、回答有り難うございます。

Turbo Power OnGuardに関しては、残念ながらDelphiのバージョンが合わず、
断念しました。こんなものもあるのですね。

回答頂きました

>自分起動された時刻と終了時刻のログをとり矛盾がないか調査する
>プログラム終了時に指定されたテーブルに日時を書きこませ再稼動時に日時を比較させる方法

今回は時間のログを比較する手法で作成いたしました。

皆様ありがとうございました。

編集 削除