软件保护系统WinLicense独家保护技术SecureEngine使用指南(9)——关于检查注册宏

翻译|使用教程|编辑:李显亮|2020-03-31 11:24:26.500|阅读 114 次

概述:WinLicense使用SecureEngine®保护技术,该技术能够以最高优先级运行其代码,以实现前所未有的保护技术。SecureEngine®宏允许使用SecureEngine®与应用程序进行交互,从而使应用程序和SecureEngine®可以作为一个整体运行。

# 31款JAVA开发必备控件和工具 # 企业数字化建设合规无风险[专题]

WinLicense是一个功能强大的保护系统,为希望保护其应用程序免受高级逆向工程和软件破解的软件开发人员设计。WinLicense使用SecureEngine®保护技术,该技术能够以最高优先级运行其代码,以实现前所未有的保护技术。

SecureEngine®宏允许使用SecureEngine®与应用程序进行交互,从而使应用程序和SecureEngine®可以作为一个整体运行。要将SecureEngine®宏包含到应用程序中,需要在应用程序源代码中指定这些宏。 当SecureEngine®打算保护应用程序时,它将在应用程序内找到这些宏并将所需的操作应用于每个特定的宏。

SecureEngine®提供给软件开发人员的不同宏如下: 

  • 在编程语言中使用宏
  • 虚拟机宏
  • 突变宏
  • StrEncrypt宏
  • 注册宏
  • 未注册的宏
  • 未保护的宏
  • 检查保护宏
  • 检查代码完整性宏
  • 检查注册宏
  • 检查Virtual PC宏

如果你还没有使用过WinLicense,可以点击此处下载最新版测试。


关于检查注册宏

The CHECK_REGISTRATION宏可以检查应用程序是否已使用有效的许可证密钥进行了注册。可以知道应用程序是否通过WLRegGetStatus注册。CHECK_REGISTRATION宏可以用作双重检查,以确保应用程序未被篡改。

注意:SecureEgine®的当前版本不支持.NET语言或Visual Basic应用程序的此宏。

CHECK_REGISTRATION宏可以从其他宏内部调用。实际上,强烈建议从VM宏内部调用CHECK_REGISTRATION宏。

CHECK_CODE_INTEGRITY宏有一个特殊的语法:

CHECK_REGISTRATION (user_variable, user_value)

其中“ user_variable”是应用程序中的任何局部或全局变量,而“ user_value”是任何立即数(恒定值)。它的工作方式如下:

  • 调用CHECK_REGISTRATION宏。
  • SecureEngine控制处理器,并进行特殊检查以了解您的应用程序是否正确注册。
  • 如果应用程序已正确注册,则SecureEngine会将“ user_variable”设置为等于“ user_value”。
  • 如果未注册应用程序,则SecureEngine不会设置“ user_variable”。您应该注意将“ user_variable”初始化为“ user_value”中的其他内容。
  • SecureEngine将控制权返回给受保护的应用程序。受保护的应用程序应检查“ user_variable”的值,如果未注册该应用程序,则应执行所需的操作。

显示Delphi宏用法

var

 MyCheckVar: Integer;

 

begin

 

{$I VM_Start.inc}

 

// your code goes here

 

{$I CheckRegistration_Prolog.inc}

asm

 push 11111111                     // 11111111 is our special constant

 pop  MyCheckVar                   // SecureEngine will set "MyCheckVar" to 11111111 if application is registered

end;

{$I CheckRegistration_Epilog.inc}

 

// your code goes here

 

if MyCheckVar <> 11111111 then

 ShowMessage("Application is not registered!");

 

{$I VM_End.inc}

显示C++宏用法

int MyCheckVar;

 

VM_START

 

// your code goes here

 

CHECK_REGISTRATION(MyCheckVar, 0x12345678)

 

// your code goes here

 

if (MyCheckVar != 0x12345678)

 printf("Application is not registered");

 

VM_END

慧都网是WinLicense正版代理商,提供最低的授权价格和最优质的服务,在线购买享受超值优惠>>


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至hey@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
在线咨询
联系我们
TOP
在线客服系统
live chat