Virtualize markers
DotFix NiceProtect поддерживает маркеры кода для морфинга и виртуализации 32 битных функций. Для использования этой возможности вы должны использовать файлы и примеры из SDK. В общем виде пометка функций для защиты имеет вид:
Delphi:
{$I protect_start.inc}
ваш код;
{$I protect_end.inc}
C++:
#include "protect.h"
protect_start;
ваш код;
protect_end;
Visual Basic 5.0 / 6.0:
Call VarPtr("$$protect_start$$")
ваш код
Call VarPtr("$$protect_end$$")
Примеры использования маркеров располагаются в папке SDK\Examples.
Маркеры NiceProtect ищет и виртуализирует автоматически при нажатии кнопки Start, никаких дополнительных опций для этого не требуется.
Обратите внимание: обработчики ошибок (конструкции try ... except ... finally, SEH фреймы и т.д.), а также switch-case блоки не могут быть защищены с использованием маркеров. Также защищенный маркерами код будет работать неверно, в случае если какой либо код Вашей программы имеет переходы внутрь защищенного блока. Причина проста - на месте защищенного блока размещается мусорный код, а защищенный код переносится в секцию защиты в мутированном и виртуализованном виде.