Вопрос по мастеру автозащиты

Здравствуйте.

Долгое время использовал SDK 5.5, недавно перешёл на 7-ю версию. Сходу не нашёл в мастере автозащиты привычной опции "Защитить новую версию приложения..." (она был серая, потом из документации выяснилось, что нужно нажать "закрыть проект", чтобы её активировать; не очень логично, сначала открыть, потом тут же закрыть). Поэтому с каждой новой версией проходил через все окна настроек открытого проекта, оставляя всё как есть. Если нужно было отдельно записать ключ - использовал GrdUtil.

Потом выяснилось, что разные версии друг с другом несовместимы. Т.е. даже простой проход по окнам настроек без изменений даёт другую прошивку ключа. Эти прошивки появляются в списке GrdUtil.
GrdUtil

Если я сейчас буду использовать "Защитить новую версию приложения...", автозащита будет привязана к последней прошивке ключа (9-ой в данном случае). А мне хотелось бы использовать одну из старых (напр. 7-ю), чтобы обновить программу, работающую с ранее записанными ключами. Возможно ли это?

Re: Вопрос по мастеру автозащиты

Здравствуйте!
Обращаю Ваше внимание, что в мастере лицензирования и автоматической защиты реализована опция тиражирования ключей. Более подробно на нашем портале документации (Шаг 3) http://developer.guardant.ru/pages/view … Id=2031981. При использовании этой опции одна и та же копия защищённого приложения будет работать с ключами, которые будут записаны таким образом.
Скорее всего у Вас одинаковые образы сохранены, поскольку из Вашего сообщения следует вывод, что Вы использовали опцию "Перезащитить новую версию приложения, ничего не изменяя в ключе защиты". Чтобы убедиться в этом, Вы можете открыть их и сравнить с помощью утилиты GrdUtil.

Просьба проверить и сообщить о результате.

Re: Вопрос по мастеру автозащиты

Я писал о том, что как раз таки НЕ использовал опцию "Перезащитить новую версию приложения...". Прошивки в результате разные, 12-13-й алгоритмы отличаются.
Сейчас да, я нашёл эту опцию, но она всегда использует последнюю прошивку, а мне надо одну из предыдущих.

Смотрел ppr-файл проекта - у вас там нет ссылок на файл прошивки, вместо этого прописаны определители 12-13-го алгоритмов. Попробовал прописать нужные определители вручную - теперь ругается что файл повреждён, видимо хэш не совпадает. Как посчитать хэш? Ну или чем можно редактировать ppr-файл, чтобы он сам посчитался?

Re: Вопрос по мастеру автозащиты

Если Вам требуется записать определённый образ в ключ Вы можете воспользоваться GrdUtil.
Выберите необходимый образ как в скриншоте из первого Вашего сообщения. Более подробно на нашем портале документации.
Он загрузится в окно GrdUtil, после этого нажмите кнопку "записать образ в ключ", предварительно подключив ключ соответствующей модели к USB порту компьютера.
После этого более ранняя версия Вашего защищённого приложения будет запускаться при подключенном ключе.

Re: Вопрос по мастеру автозащиты

Наоборот, мне нужно привязать новую версию приложения к старому ключу. При этом определители алгоритмов в ppr-файле отличаются от тех, с которыми был прошит ключ. Поэтому стандартная опция "Перезащитить новую версию приложения..." не работает.

Я уже понял как это сделать (ручной правкой ppr-файла), от вас прошу только метод расчёта хэша ppr-файла или какую-нибудь утилиту для редактирования этих файлов.

Re: Вопрос по мастеру автозащиты

Здравствуйте!
В таком случае Вам нужно записать необходимый образ с помощью GrdUtil. Затем запустите мастер лицензирования и автоматической защиты и выбрать опцию "ключ программируется самостоятельно разработчиком в GrdUtil".
После завершения работы мастера защищённое приложение будет запускаться с ключом guardant, в который прошита маска более ранней версии.

Re: Вопрос по мастеру автозащиты

Спасибо, всё получилось.

Re: Вопрос по мастеру автозащиты

Пожалуйста, обращайтесь!