Номер, помеченный в VMProtect как "заблокированный", больше не должен приниматься системой лицензирования. При очередной защите приложения VMProtect запишет в защищаемый файл хеш от номеров черного списка, вследствие чего система лицензирования в этом приложении откажет при попытке установить такой номер.
Сократим до минимума код функции main():
int main(int argc, char **argv) { char *serial = "Xserialnumber"; // зададим номер непосредственно в коде для простоты int res = VMProtectSetSerialNumber(serial); print_state(res); return 0; }
Запустим программу и убедимся, что система лицензирования принимает наш серийный номер:
state = 0
Теперь занесем наш номер в черный список с точки зрения системы лицензирования. Для этого в ini-файл добавим строку:
BlackListedSerialNumber=Xserialnumber
И снова запускаем программу:
state = SERIAL_STATE_FLAG_BLACKLISTED
Сообщать ли пользователю о занесении его номера в черный список, или просто сообщить, что номер неверный - оставлено на усмотрение разработчика. Система лицензирования лишь сообщает программе о факте использования заблокированного номера.