logo VMProtect用户手册 我也要发布文档

将VMProtect集成到应用程序教程之实模式(三):测试结果


在实模式下,VMProtect许可系统向受保护的应用程序放置一个特殊的许可模块。该模块执行与SDK中的测试功能相同的功能,但是使用序列号的内容而不是配置ini文件。本系列教程的五个步骤说明了使用基于VMProtect和许可系统的全功能保护来保护简单应用程序的过程。

免费下载VMProtect  优惠购买VMProtect


步骤四  测试结果

序列号到期日期

创建另一个具有特定到期日期的序列号(例如,2005)。该日期已经过去,所以序列号必须不正确。切换到“Licenses”部分,然后单击工具栏上的“Add license”按钮。在“Add license”对话框窗口中,启用“Expiration date”选项并指定2005年9月30日。创建序列号,将其复制并粘贴到serial.txt,然后运行程序:

C:\test>dummy_app.vmp.exe
serial number is bad
state = SERIAL_STATE_FLAG_DATE_EXPIRED

许可模块返回“serial number is expired”标志。现在,将工作序列号放回serial.txt文件,并确保许可模块完全接受它。

C:\test>dummy_app.vmp.exe
serial number is correct, calling foo()
I'm foo
done

将序列号添加到黑名单

想象一下,我们的“good”序列号已经泄漏到Internet上,并且已经被盗用,现在需要阻止它,使其在程序的将来版本中不起作用。

为此,选择列表中的序列号,并将主面板中的“Blocked”属性设置为“Yes”。目前,序列号尚未被阻止,但是当再次保护文件时,应用程序将不再接受该序列号。如果现在运行程序,它应该接受被阻止的序列号且不会出现任何问题,因为这是旧版本,不知道阻塞编号:

C:\test>dummy_app.vmp.exe
serial number is correct, calling foo()
I'm foo
done

现在,复制程序并将其命名为“dummy_app1.vmp.exe”,打开VMProtect并再次保护应用程序。然后运行此新版本:

C:\ test> dummy_app.vmp.exe 
序列号为错误
状态= SERIAL_STATE_FLAG_BLACKLISTED

再次与旧版本进行比较:

C:\ test> dummy_app1.vmp.exe 
序列号正确,调用foo()
我
完成了foo

较早的版本不知道被阻止的序列号,所以可以像以前一样工作。

在下一步中,我们将尝试将代码锁定为序列号。但是在那之前,请解除阻止序列号,然后在VMProtect中将保护重新应用于应用程序,使其再次接受该序列号,或创建一个新许可证。


有关VMProtect更多资源,请联系【慧都客服】了解


12月,庆圣诞,迎元旦,上“慧都网”小程序签到兑软件商城无门槛抵价券>>>   领优惠券购VMProtect享折上折>>>

在线咨询
联系我们

客服热线
023-68661681

QQ客服

意见反馈


添加微信获专业服务

TOP