加密保護軟件 WinLicense 註冊常見問題解答(三)

WinLicense具備和Themida同級別的保護功能以及受權管理功能。軟件功能強大,使用靈活,開發者能夠安全地發佈軟件的試用版和徹底版。安全

下載WinLicense最新試用版bash

Q1:「Keep Trial Running」選項(在Advanced Option面板中)的用途是什麼?

A:默認狀況下,WinLicense控制全部試用/許可事件(到期,許可證無效等)。你能夠轉到Customized Dialog面板,對於特定消息,你能夠選中「Display by SDK or not displayed」選項。 當你檢查該選項時,若是發生特定事件,WinLicense將不會顯示任何消息並繼續執行你的應用程序。所以,你必須經過調用WinLicense SDK函數(WLRegGetStatus,WLTrialGetStatus)確保從應用程序處理該消息。編輯器

若是你不想控制每一個特定的許可證事件(許可證已損壞,鎖定到其餘計算機,許可證已過時等),你只需在Customized Dialog面板中保留「Display By WinLicense」選項以獲取這些特定的許可證消息。所以,WinLicense將顯示許可證消息錯誤並退出執行。 選項「Keep Trial Running」僅用做hack,讓WinLicense顯示錯誤消息並繼續執行你的應用程序(以後運行試用模式)。函數

若是你正在選中「Keep Trial Running」選項,則應檢查應用程序的狀態(調用WLRegGetStatus)來控制應用程序什麼時候使用無效許可證運行。若是你不檢查應用程序的狀態,即便使用錯誤的許可證,你的應用程序也將繼續運行。spa

請注意,咱們不建議使用「Keep Trial Running」選項。若是你計劃徹底控制應用程序中的試用/註冊狀態,你應該在自定義對話框面板中控制大多數試用/註冊消息(選擇 「Display by SDK or not displayed」這些消息)並使用WinLicense SDK功能(WLRegGetStatus / WLTrialGetStatus)來了解應用程序的當前狀態。code

Q2:當應用程序在非保護狀態下運行時,如何模擬CustomData值? 我想使用WinlicenseSDK.ini來指定屬性。

A:請使用Notepad.exe(或任何文本編輯器)打開「WinlicenseSDK.ini」文件,你能夠找到如下行:事件

WLRegGetLicenseInfo = Peter Brian/Company Name/pbrian@companyname.com
複製代碼

WLRegGetLicenseInfo中的「/」分隔符對應於Name / Company / CustomData。開發

在上面的示例中,自定義數據爲「pbrian@companyname.com」。請注意,你能夠經過在WinLicenseSDK.ini文件中更改「Separator」char。只需打開WinlicenseSDK.ini並編輯「Separator」便可。例:get

[WinLicenseSDK]
; Separator for fields in "WLRegGetLicenseInfo"
Separator = /
...

Q3:宏 REGISTERED_START 和 REGISTEREDVM_START有什麼區別?

A:宏 REGISTERED_START 將使用從當前許可證得到的解密密鑰解密START-END標記內的代碼。若是你的應用程序未註冊,宏將從Start跳到End,而且宏內的代碼將不會被執行。虛擬機

宏 REGISTEREDVM_START 容許你標記在註冊應用程序時將執行的代碼區域。若是你的應用程序未註冊,則執行宏時應用程序將掛起或崩潰。在執行此宏中的代碼以前,你應確保已註冊應用程序(使用WLRegGetStatus)。此宏是針對註冊狀態的隱藏攻擊的雙重檢查。

宏內部的代碼在虛擬機內部執行,所以你應該避免宏內部的緊密循環或關鍵代碼(每秒執行屢次)。

相關文章
相關標籤/搜索