彩票走势图

软件保护系统Themida常见问题集锦(七)—Themida是否需要Internet才能工作?

原创|其它|编辑:李显亮|2019-07-16 14:03:55.483|阅读 255 次

概述:Themida是先进的Windows软件保护系统,它被用于满足软件开发人员对于所开发应用程序安全保护的需求,使其远离被先进的逆向工程和软件破解的危险。本文是软件使用过程中遇到的常见问题合集。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

相关产品推荐:【软件保护工具WinLicense免费下载试用】   【软件保护系统VMProtect试用下载】  【代码保护系统.NET Reactor试用下载】


Themida是先进的Windows软件保护系统,它被用于满足软件开发人员对于所开发应用程序安全保护的需求,使其远离被先进的逆向工程和软件破解的危险。

通过Themida,我们集中在软件保护器所具有的主要弱点,从而提供了解决这些问题的完整解决方案。Themida使用SecureEngine®保护技术,当以最高优先级运行时,实施前所未见的保护技术,以保护应用程序免受高级软件破解。


 Themida常见问答集锦

 相关产品问答集锦:【加密保护软件 WinLicense常见问题整理大全】


Q:我有一个VM_START / END函数。在START - END宏标记内部,我调用一个名为“Function2()”的外部函数。那个外部的“Function2()”也是虚拟化的吗?

A:在这种情况下,将虚拟化Function2()的调用约定,而不是Function2()中的代码。例:

void MyMainFunction()
{
   VM_START
      //一些代码 
      功能2(1,2,3)
      //一些代码
   VM_END
}

在上面的示例中,START - END标记内的所有代码都已虚拟化。Function2()的调用约定(传递参数)也是虚拟化的,但不是“Function2()”中的代码。如果您还想在Function2()中虚拟化代码,则必须在Function2()中放入* another *宏。例:

void Function2(param1,param2,param3)
{
    VM_START 
    //一些代码
    VM_END
}


Q:在VM_START/END标记中,我调用了几个函数。那些被调用的函数也是虚拟化的吗?

A:假设以下示例:

int main(void)
{
VM_START

    MyFunction1();
    MyFunction2();

返回0;

    VM_END
}

在上面的例子中,保护“main()”函数内的代码,但不保护“Function1()”“Function2()”中的代码。如果要保护/虚拟化“Function1()”“Function2()”中的代码,则需要在“Function1()”中放置另一个VM宏,在“Function2()”中放置另一个VM宏。


Q:Themida是否需要internet才能工作?

A:如果您启用了Taggant选项(在保护选项面板中),Themida/WinLicense只需要internet连接。无论如何,在最新的版本中,添加了一个使用“late”taggant进行保护的特性,因此可以在没有internet连接的机器中保护您的应用程序,然后在稍后的时间将taggant应用于它。

 

Q:我是否可以稍后从另一台连接互联网的计算机上添加Taggant证书?

A:是的,最新版添加了命令行选项“ / latetaggant ”,因此受保护的应用程序可以在以后接受标签剂证书。例:

Themida.exe / latetaggant / protect“MyProjectFile.tmd”

注意,只有应用了taggant之后,才可以执行带有“/latetaggant”的受保护的应用程序。要在稍后添加taggant证书,您必须使用命令行选项“/embedtaggant”,传递文件来应用taggant。例:

Themida.exe / embedtaggant MyProtectedFile.exe

目前,“latetaggant”选项仅适用于命令行保护,无法从用户界面执行此操作。


Q:我的虚拟器宏中有一些葡萄牙字符串,但是当我单击“保护宏”面板中的“ANSI strings”选项卡时,其中一些字符串是无法识别的。这是为什么呢?

A:代码虚拟化器搜索可打印字符,以便能够确定指向“某物”的指针是否是字符串。由于字符串可能包含特殊的葡萄牙字符,因此内部函数可能会失败,无法确定特定的字符是否可以打印。

您可以更改当前的语言环境,这样代码虚拟化器将能够找到您的葡萄牙语字符串。

  1. 编辑virtualize .ini文件,在[General]部分添加以下条目:
    StrEncryptLocale = Portuguese
  2. 重新启动Code Virtualizer并转到“保护宏”面板,然后单击特定的VIRTUALIZER宏并转到底部的“ANSI字符串”选项卡,确保现在可以识别您的葡萄牙语字符串。

当然,可以为其他语言更改“StrEncryptLocale”条目,例如“俄语”,“西班牙语”等。


-- 持续更新中 --



Themida正版授权在线订购超值价格享不停!>>立即查看价格



标签:

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


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP