Система лицензирования инициализирована, так что мы можем попробовать скомпилировать проект VMPrtoect и запустить защищенный файл. Запустив его из командной строки мы получим следующее сообщение:
C:\test>dummy_app.vmp.exe serial number is bad state = SERIAL_STATE_FLAG_INVALID
Запустив программу depends.exe, мы можем убедиться, что наш защищенный файл более не связан с библиотекой VMProtectSDK.dll, а значит модуль лицензирования встроен в приложение. Список используемых DLL можно посмотреть и в VMProtect, открыв защищенный файл и выбрав из раздела "Свойства" секцию "Импорты".
Наша защищаемая программа читает серийный номер из файла serial.txt. Поскольку этого файла сейчас нет, то модулю лицензирования подается пустой номер, который также не считается корректным. Перейдем на закладку "лицензии" и сгенерируем серийный номер. Подробно эта процедура описана здесь, мы создадим самый простой серийный номер без каких-либо ограничений.
Затем скопируем серийный номер (в свойствах лицензии выделим поле "Серийный номер" и нажмем Ctrl+C), создадим рядом с защищенным приложением файл serial.txt и вставим туда серийный номер. После запуска программы мы увидим следующее:
C:\test>dummy_app.vmp.exe serial number is correct, calling foo() I'm foo done
Система лицензирования проверила серийный номер и посчитала его корректным. На следующем шаге мы попробуем применить некоторые ограничения и посмотрим что из этого выйдет.