簡體   English   中英

如何限制.net應用程序執行特定次數

[英]how can I limit a .net application to be executed for specific number of times

我正在制作一個C#(winforms)應用程序,我希望用戶只能執行定義的次數(例如100次)。 我知道可以添加一個xml或文本文件來存儲計數,但是這很容易編輯或“破解”……這是他們將計數器嵌入代碼中的任何方式,或者可能是其他沒有的方式容易破解? 並且在以后的100次處決中“更新”成員資格也很容易嗎?

提前致謝

有很多存儲變量的方法。 如前所述,您可以將其寫入文本或xml文件。 您可以將其寫入注冊表。 您可以對其進行加密並將其寫入文件中的某個位置。

也許最安全的方法是將其寫入服務器,並在應用程序運行時讓它“回撥”。

防止復制是一項困難的平衡行為-將您的合法客戶像犯罪分子一樣對待,他們會離開您的。

如果您在談論成員資格,則您的應用程序可能是通過Web連接的。 如果是這種情況,您可以通過服務器上的Web服務驗證該實例,該Web服務保存並增加計數並發出“ OK / Not OK to run”答復。

如果您不想這樣做,我聽說過一個使用隱寫術在某些文件中隱藏相關細節的應用程序-您可以在某些圖像資源中隱藏計數。

創建包含計數器或應用程序運行次數的多個文件。 使用不同的文件名命名這些文件,並將其存儲在不同的位置,以使用戶難以定位,刪除和破解。 之所以它不只是一個文件,是因為如果用戶找到了您的文件之一並對其進行了更改或刪除,那么您仍然會有其他文件,其中包含有關您應用程序的有效信息。

如果您的應用程序是商業產品,那么可能值得看看其他商業供應商(例如SafeNet.com)的安全產品。

幾年前,我將HASP HL硬鎖用於一個項目,效果很好。

他們提供用於軟件保護的硬件加密狗以及基於軟件的保護(使用Internet上的身份驗證服務),以及兩者的結合。

他們的產品可以非常精細地控制您想要允許用戶的內容,例如,應用程序在過期之前可以啟動多少次(這恰好是您想要的),時間到期,功能包或任何組合這一切。

不利的一面是,它們的許可證價格非常“健康”。 如果值得的話,將取決於您自己的應用程序的大小和價格。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM