есть ключи. действующие до (условно) 1 сентября(много месяцев в будущем)
нужно сделать сборку которая будет работать с этими ключами - до 31 апреля и не больше.
Банить и перевыпускать все ключи уже с коротким сроком действия-не желательно.
Вставить проверку времени в саму программу-получаем уязвимость перед играми с часами на машине пользователя.
срок годности и макс.дата сборки(в одну дату ставились)
Есть 2 варианта:
Ближе к 31 апреля выпустить новую версию, перед сборкой которой в VMProtect перевести дату компьютера на 1 сентября (при этом в защищенную программу запишется дата текущей сборки как 1 сентября). После этого ключи, выданные с ограничением по дате сборке до 1 сентября станут невалидными для этой версии. Но есть один минус - до реального 1 сентрября придется каждый раз повторять эту операцию, чтобы пользователи не смогли воспользоваться старыми ключами.
В код после VMProtectSetSerialData добавить VMProtectGetSerialNumberData с получение информации о серийном номере и затем самостоятельно сравнивать текущее текущую дату с 31 апреля если в VMProtectSerialNumberData.dtExpire присутствует дата 1 сентября.