軟件保護工具VMProtect將許可系統(tǒng)集成到應(yīng)用程序(3)——檢索用戶的名稱和電子郵件
VMProtect是一種很可靠的工具,可以保護應(yīng)用程序代碼免受分析和破解,但只有在應(yīng)用程序內(nèi)保護機制正確構(gòu)建且沒有可能破壞整個保護的嚴重錯誤的情況下,才能實現(xiàn)最好的效果。
建筑保護總是經(jīng)歷兩個主要步驟:開發(fā)和發(fā)布。至于許可,首先創(chuàng)建一個應(yīng)用程序,將保護集成到其中,然后添加檢查和功能限制。只有經(jīng)過全面測試,才能將產(chǎn)品提供給用戶并開始第二階段。測試受保護的應(yīng)用程序是一個復(fù)雜的過程,因為需要確保所有檢查和條件跳轉(zhuǎn)都能正常運行。
許可系統(tǒng)提供“開發(fā)者模式”(AKA“測試模式”),在此工作模式下,不對應(yīng)用程序應(yīng)用任何保護,并且在配置文件中調(diào)整系統(tǒng)對提供的序列號的反應(yīng)。當應(yīng)用程序沒有錯誤并且它正確地與許可系統(tǒng)一起使用時,VMProtect將“測試”許可模塊替換為執(zhí)行實際序列號檢查的真實模塊。
測試模式
在測試模式中,許可系統(tǒng)(它返回的狀態(tài)和數(shù)據(jù))對提供的序列號的所有反應(yīng)都在配置文件中描述。該文件名為VMPLicense.ini,應(yīng)位于應(yīng)用程序的工作文件夾中。在下面提供的10個步驟中,將從創(chuàng)建最簡單的應(yīng)用程序到在測試模式下全面使用許可系統(tǒng),具有硬件鎖定和限制免費升級的時間。
▲步驟四:檢索用戶的名稱和電子郵件
如果希望從序列號中獲取用戶的姓名和電子郵件,以在“關(guān)于”窗口(或其他任何位置)中顯示它們,那么必須在ini文件中再添加兩行:
[TestLicense] AcceptedSerialNumber=Xserialnumber UserName=John Doe EMail=john@doe.com
在程序中,如果注冊成功,我們將獲取這些數(shù)據(jù)并將其輸出到屏幕:
VMProtectSerialNumberData sd = {0}; VMProtectGetSerialNumberData(&sd, sizeof(sd)); printf("name = %ls,\ne-mail = %ls\n", sd.wUserName, sd.wEMail);
該結(jié)構(gòu)包含UNICODE數(shù)據(jù),因此printf()使用%ls指定符而不是%s。 該程序應(yīng)在屏幕上打印以下文本:
state = 0 We are registered. name = John Doe, e-mail = john@doe.com
-- 未完待續(xù) --
VMProtect正版授權(quán)在線訂購特享超低價格!更有免費現(xiàn)金抵扣券領(lǐng)取>>立即點擊咨詢購買
掃描關(guān)注“慧聚IT”微信公眾號,及時獲取最新動態(tài)及最新資訊
