Phaza7 пишет:Здравствуйте. Обновил комплект разработчика, поставил новый сегодняшний версии 6.3. До сих пор скрипт работал без ошибок, теперь
NwKey32.exe /GC=0:128::1:PublicKeyCode.bin /UV=1 /UN=2 /UM=0x4 /T=1 /RC=0 /EXIT_DELAY=20 ^
/V /ATR=4 /MSG=NWKEY32.rus.MSG ^
/IMPORT_HOOK_LIST=XXX.piw ^
XXX.exe
выбрасывает ошибку: “ERROR: .PRC-файл не содержит данных для указанного файла”. Как я понимаю, prc файл связан с использованием ключа RIP_CODE_LIST, но я его не использую. Если убрать ключ IMPORT_HOOK_LIST, то ошибка исчезает.
Кстати, когда вы планируете исправить ошибку, проявляющуюся при повторном открытии prc файла (писал вам ранее на hotline, ответили, что ошибка будет исправлена)? На данный момент получается, что ни IMPORT_HOOK_LIST, ни RIP_CODE_LIST (два самых ярких элемента автозащиты) я не могу использовать.
Здравствуйте,
Подобное поведение связано с тем, что теперь файл для защиты с помощью IMPORT_HOOK_LIST ищется по его хэшу, а не по полному пути, указанному в piw файле. Это изменение связано с тем, что форматы piw и prc файлов теперь одинаковы, а защита измененного защищаемого приложения со старым prc файлом приводит к ошибке.
Мы сейчас решаем, как сделать использование этой опции для перекомпилированных приложений более удобным. Вероятно придется вернуть обратно игнорирование ненайденных импортируемых функций (без предупреждения или с выводом информации в консоль).
Эта, и вторая ошибка с повторным открытием PRC планируется к исправлению в релизе 6.31, планируемом на конец декабря. Как ни странно, у 95% клиентов сценарий использования этих опций прямолинеен - каждый раз они профилируют и выставляют защиту импортов при наложении автозащиты, так что и хэш файла в piw/prc корректен, и повторное открытие как правило не требуется. Это и привело к такой досадной оплошности.
Благодарим Вас за то, что обратили наше внимание на проблему и за Ваше терпение.