加密保护软件 WinLicense常见问题整理大全(八):自定义对话框

WinLicense具有和Themida同级别的保护功能以及授权管理功能。软件功能强大,使用灵活,开发者可以安全地发布软件的试用版和完全版。

1.我正在尝试使用“Message DLL”,但是当保护第一次调用DLL时我有一个异常。我可以确定我使用的是正确的函数语法。怎么回事?

一个常见问题是捆绑的DLL在加载时生成托管异常。要解决这些异常,请选中“XBundlerExceptionSupport”选项(在SecureEngine Config面板中)并再次进行保护。

如果仍然有问题,建议你给我们(WinLicense)发送一个我们可以在这里用来重现你的问题的测试DLL(编译的DLL)。


2.我想修改传递给我的自定义DLL的字符串,因此消息由我修改但由WinLicense显示。另外,我不想解析收到的字符串以提取过期信息等。 所以,我可以在我修改过的字符串中直接使用定义的常量(%daysleft,%machineid等)吗?

在最新的WinLicense中,你可以直接将传递的字符串更改为自定义DLL,并在修改后的字符串中使用已定义的试用/许可证常量。

如果要将传递的字符串修改为UNICODE,则必须使用char“L”启动UNICODE字符串。例如,如果你修改的UNICODE字符串是“This is my string”,则必须传递“LThis is my string”。


3.我想知道如何在外部自定义DLL对话框中获取和显示像%daysleft(参见MsgID14)这样的变量?

当你使用自定义DLL功能显示对话框时,DLL中接收所有通知消息的函数将作为参数获取指向应显示的原始消息的指针。因此,如果你将%daysleft放在自定义对话框面板中以获取所需的特定消息,则你的DLL将获得该消息, 其中“%daysleft”已转换为当前剩余日期。所以,当你想要提取当前的“剩余天数”时,只需要解析消息。


4.如果没有许可证,如何显示自定义对话框/表单?

请转到“Customized Dialog(自定义对话框)”面板,你可以看到一个新选项“Control Messages from external DLL(从外部DLL控制消息)”。 这个新功能使你有机会从嵌入受保护应用程序(并且从不写入磁盘)的DLL中显示自己的对话框。请参阅最新的帮助文件“WinLicense - >保护应用程序 - >自定义对话框”部分,以获取有关此选项的更多信息。


5.我们可以以任何方式停用Themida/WinLicense的警告/错误消息吗?

请转到“Customized Dialog”面板。对于消息MSGID0到MSGID13(内部保护消息),你只需编辑消息,在消息正文中留一个空格。Themida/WinLicense不会显示正文包含在一个空格中的消息。

对于MSGID13到MSGID35(试用注册消息),只需选择你不想显示的特定消息,然后选中该特定消息的“Displayed by SDK or not displayed(由SDK显示或不显示)”选项。


6.如果我想显示剩余天数和其他事情的对话框(从应用程序内部),而不使用WinLicense保护后显示的对话框,我必须购买WinLicense DLL Control或我可以用WinLicense执行此操作吗?(例如:如果应用程序试用期到期,我想从代码管理它,而不是显示默认对话框)

WinLicense DLL Control仅适用于非常特定的情况。WinLicense可以处理所有常见情况,无需DLL控件。

请转到“Customized Dialog”面板,你可以看到WinLicense显示的所有消息。对于每个试用/注册消息,你都可以设置WinLicense是否显示该消息。例如,如果你选择“MsgID15:试用天数已过期”并选中“Displayed by SDK or not displayed”选项,则表示即使你的试用版已过期,WinLicense也不会显示任何消息,并且会保留你的应用运行! 所以,你负责处理该事件(通过调用WinLicense SDK API,如本示例中的WLTrialDaysLeft)并在试用期满数天后执行适当的操作。

请记住,对于每条消息,你可以启用它是否由Winlicense或你处理(通过选中“Will be displayed by Winlicense”或“Displayed by SDK or not displayed”选项)。因此,你只需要处理你希望从应用程序处理的那些消息,并留下由WinLicense处理的特殊消息/事件(如许可证损坏,被盗许可证密钥等)。

下载WinLicense最新试用版


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章