討論區快速選單
知識庫快速選單
討論區最近新進100則主題 傑米的攝影旅遊筆記 網路投保旅行平安險
[ 回上頁 ] [ 討論區發言規則 ]
請問如何製作30天的試用版
更改我的閱讀文章字型大小
作者 : wolfman(小狼)
[ 貼文 30 | 人氣 8955 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2005/10/21 上午 11:52:46
大家好
目前有寫一個程式給客戶使用
請問要如何改成30天的試用版本呢
謝謝
作者 : kinjiwang(kin)
[ 貼文 76 | 人氣 74 | 評價 380 | 評價/貼文 5 | 送出評價 2 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2005/10/21 上午 11:59:42
寫入登錄集
再抓比對
作者 : wolfman(小狼)
[ 貼文 30 | 人氣 8955 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2005/10/21 下午 01:46:25
謝謝
請問登入集檔案(.ini)是自己建立的嗎
這樣的話客戶可以自己更改檔案內容而破解試用版

還是作業系統有內建的登入集檔案是客戶無法更改的
謝謝囉
作者 : 57805137(水瓶天賞) Visual Basic卓越專家貼文超過500則
[ 貼文 698 | 人氣 4505 | 評價 2720 | 評價/貼文 3.9 | 送出評價 2 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2005/10/23 下午 04:32:06
1.好點的封裝軟體 可以做到...除非系統重灌或輸入正確的開鎖編號才能解
2.使用硬體鎖之類..將時間放入...計算
3.使用本身軟體功能...那就是要寫入註冊檔...這樣比較不容易破
4.不管怎樣軟體就是30天試用,功能會hide一些...正式版才另外的程式
    這是防小人的...對了...畫面不用做的很漂亮.....
   正式版才是完美 漂亮的
作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2005/10/25 下午 06:36:05
寫入註冊檔有較簡單的方式,不用API喔!
SaveSetting App.Title, "Data", "Run", 1
''''''App.title是exe名稱,建議自己取一個
     Data,Run也是自己取名的
     最後的1就是數值表示,妳可以取abcd代表剩幾天可使用

 讀取註冊檔方式也很簡單
aaa=GetSetting(App.Title, "Data", "Run", 0) 就可以了
最後一個"0"數值是如果讀不到的預設值,就是你說的30天拉
作者 : chiuinan2(青衫)討論區板主 Visual C++ .NET卓越專家VC++一代宗師Visual Basic優秀好手資訊類作業求救卓越專家一般曠世奇才程式設計甘苦談優秀好手C++ Builder優秀好手上班族的哈拉園地優秀好手C++頂尖高手Assembly優秀好手貼文超過3000則人氣指數超過150000點
[ 貼文 3732 | 人氣 170106 | 評價 34520 | 評價/貼文 9.25 | 送出評價 125 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人wolfman註記此篇回應為最佳解答 2005/10/26 上午 06:01:22
我分成四個部份來考慮:

1.應記錄的資訊

大抵應該有啟用的日期(或是到期日期), 最近一次使用的日期, 檢查碼. 啟用日期是為了檢驗是否超過試用期限, 最近一次使用日期, 是為了避免使用者經由修改系統日期來延續試用版的執行. 檢查碼是用來避免使用者偷偷改掉這些資訊. 使用剩餘天數並不妥, 因為你的程式不一定天天執行, 同時要累計一天也比較麻煩.

2.如何記錄

儘可能不要用明碼. 例如將日期時間轉換成數字來記錄. 當然你也可以直接存日期時間字串, 純靠檢查碼來防止修改, 只是這樣會比較薄弱一點. 檢查碼用累加法便可以了, 畢竟客戶不是資訊破解人員, 稍微防一下他們便無能為力了. 能用CRC32或MD5,MD6等方法那就更好了, 但沒必要做到那麼複雜.

3.記錄在那裡

用.ini也可, 自已存檔案也行, 放在registry都可以. 但儘可能地將這些資訊隱藏起來. 例如要放在registry, 便放在一些不相干的機碼內, 愈沒意義的, 使用者愈難找.

4.處理流程

(1)執行時, 首先檢查有沒有前述資訊記錄, 沒有的話便加以產生記錄, 視為第一次啟用.
(2)如果已有前述資訊記錄, 首先檢驗檢查碼, 若不正確表示使用者亂改了, 顯示訊息後結束程式
(3)檢驗前次使用日期時間是否小於目前系統日期時間, 若不是, 表示系統日期被亂改, 顯示訊息後結束程式
(4)檢驗是否超出試用期限, 是的話便顯示訊息後結束程式, 否則才允許使用者開始使用.

如何記錄與記錄在那裡, 做法非常多種, 你可以從其他人的建議裡自行挑選你熟悉的方法.
作者 : ppboy0001(PPBOY)
[ 貼文 84 | 人氣 3291 | 評價 60 | 評價/貼文 0.71 | 送出評價 2 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2005/11/9 下午 04:58:05
我覺得...
1. 直接將程式設定在超過哪個日期及無法執行.
2. 再將安裝資訊或第一次執行的資訊存在註冊表或INI檔中, 交叉比對..
作者 : player(PLAYER) 貼文超過1000則人氣指數超過100000點
[ 貼文 1595 | 人氣 138661 | 評價 2840 | 評價/貼文 1.78 | 送出評價 104 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/4/6 下午 07:30:57
1.安裝時, 抓當時的日期與時間, 加密編碼後, 存到登錄資訊裡(Registry), 需先判斷到期日的編碼字串是否存在

2.每次重新啟動AP時, 抓取現在的日期與時間, 再把登錄資訊裡記錄的編碼字串, 解碼後, 進行比較

3.
a.如果超過日期範圍(避免使用者透過修改系統日期, 達到回朔軟體使用權限),
 就不讓他繼續用, 並把登錄資訊裡(Registry)
那段安裝日期的編碼字串給刪掉, 並寫進另一段到期日的編碼字串進去
b.如果沒有超過日期範圍的話, 記錄下現在啟動軟體的日期與時間後(同樣是採用編碼後的字串), 正常啟動軟體
c.如果上次啟動的日期, 小於現在日期的話, 代表使用者很明顯的再偷改系統時間, 可以考慮提早終止試用期限, 作為逞罰

4.所以你最多就有3組編碼後的字串了, 除非你的編碼/解碼公式, 被外人以逆向工程破解, 不然應該這樣就夠了
a.安裝日期
b.到期日期
c.現在日期

5.為了避免當使用者試用過舊版後, 新的試用版發生無法正常試用的情況, 所以要把編碼字串裡, 把版本號碼, 一起編碼進去
 板主 : 小樓
 > Visual Basic 6.0/VBA - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - Visual Basic 6.0/VBA - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
Visual Basic 6.0/VBA
1 阿戊 10670 
2 小樓 8650 
3 Jones 5270 
4 水瓶天賞 2340 
5 joe 2230 
6 史努比 1950 
7 阿呆紅 1440 
8 tt's 1250 
9 青衫 1150 
10 羅啟章 1020 
Visual Basic 6.0/VBA
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2019 程式設計俱樂部 http://www.programmer-club.com.tw/
0.171875