diff options
Diffstat (limited to 'help/ru/manager/activation/api.htm')
-rw-r--r-- | help/ru/manager/activation/api.htm | 223 |
1 files changed, 223 insertions, 0 deletions
diff --git a/help/ru/manager/activation/api.htm b/help/ru/manager/activation/api.htm new file mode 100644 index 0000000..8a22254 --- /dev/null +++ b/help/ru/manager/activation/api.htm @@ -0,0 +1,223 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> + <link rel="Stylesheet" type="text/css" href= + "../../default.css" /> + <meta http-equiv="Content-Type" content= + "text/html; charset=utf-8" /> + + <title>API Активации</title> + <style type="text/css"> +/*<![CDATA[*/ + th {text-align:left;} + table {border-collapse:collapse; margin-top: 4px;} + td,th {border: 1px solid #B0B0B0; padding-left:10;padding-right:10;} + /*]]>*/ + </style> +</head> + +<body> + <h1>API Активации</h1> + + <p>API Активации содержит всего 4 функции. Две предназначены для + онлайн-активации и две для оффлайн, когда на компьютере + отсутствует доступ в Интернет. API Активации предназначено для + взаимодействия с Web License Manager, так что разработчику все + равно необходимо вызывать API системы лицензирования, чтобы + использовать серийные номера, полученные от WebLM.</p><strong id= + "VMProtectActivateLicense">VMProtectActivateLicense</strong> + + <p>Функция передает код активации на сервер и возвращает серийный + номер, подходящий для этого конкретного компьютера. В противном + случае возвращается <a href="#codes">код ошибки</a>.</p> + <pre class="code">int VMProtectActivateLicense(const char *code, char *serial, int size); +</pre> + + <p>Параметр <strong>code</strong> содержит код активации, который + получен от Web License Manager в процессе покупки лицензии. + Параметр <strong>serial</strong> указывает на блок памяти размера + <strong>size</strong>, в который будет помещен сгенерированный + WebLM серийный номер.</p><strong id= + "VMProtectDeactivateLicense">VMProtectDeactivateLicense</strong> + + <p>Функция передает серийный номер на сервер для деактивации. + Возможные коды возврата перечислены <a href= + "#codes">ниже</a>.</p> + <pre class="code">int VMProtectDeactivateLicense(const char *serial); +</pre> + + <p>Параметр <strong>serial</strong> содержит серийный номер (не + код активации), полученный ранее от WebLM в процессе + активации.</p><strong id= + "VMProtectGetOfflineActivationString">VMProtectGetOfflineActivationString</strong><br /> + + <strong id= + "VMProtectGetOfflineDeactivationString">VMProtectGetOfflineDeactivationString</strong> + + <p>Эти две функции работают практически аналогично двум + предыдущим с той лишь разницей, что они не пытаются подключиться + к серверу WebLM. Вместо этого они возвращают блок текста, который + необходимо скопировать на компьютер где есть доступ в Интернет, + открыть там форму оффлайн-активации WebLM и вставить туда этот + текст.</p> + <pre class="code">int VMProtectGetOfflineActivationString(const char *code, char *buf, int size); +int VMProtectGetOfflineDeactivationString(const char *serial, char *buf, int size); +</pre> + + <p>Параметры <strong>code</strong> и <strong>serial</strong> + аналогичны параметрам онлайн-версий функций, параметр + <strong>buf</strong> должен указывать на буфер размером 1000 байт + или больше, туда будет скопирован текстовый блок для формы + оффлайн-активации. Возможные коды ошибок перечислены <a href= + "#codes">ниже</a>.</p> + + <h3 id="codes">Возможные Коды Ошибок</h3> + + <table border="1" cellspacing="0" cellpadding="2"> + <tr> + <th>Код</th> + + <th>Значение</th> + + <th>Описание</th> + </tr> + + <tr> + <td>ACTIVATION_OK</td> + + <td>0</td> + + <td>Активация прошла успешно, переменная + <strong>serial</strong> содержит серийный номер.</td> + </tr> + + <tr> + <td>ACTIVATION_SMALL_BUFFER</td> + + <td>1</td> + + <td>Буфер для серийного номера слишком маленький. Минимальный + размер буфера вычисляется по формуле: bits / 8 * 3 / 2 + N, + где bits - длина RSA ключа в битах, а N - "константа + безопасности" - дополнительное количество байт на случай + переносов строк и прочих спец-символов. Рекомендуется + использовать как минимум 10.</td> + </tr> + + <tr> + <td>ACTIVATION_NO_CONNECTION</td> + + <td>2</td> + + <td>Модуль активации не смог подключиться к Web License + Manager.</td> + </tr> + + <tr> + <td>ACTIVATION_BAD_REPLY</td> + + <td>3</td> + + <td>Сервер активации вернул неожиданный результат. Это + означает проблемы конфигурации сервера, неправильный url + сервера активации или попытку взлома.</td> + </tr> + + <tr> + <td>ACTIVATION_BANNED</td> + + <td>4</td> + + <td>Этот код активации заблокирован на сервере производителем + ПО через интерфейс WebLM (например, из-за + утечки кода активации с пиратской копией). Не путать с ACTIVATION_ALREADY_USED.</td> + </tr> + + <tr> + <td>ACTIVATION_CORRUPTED</td> + + <td>5</td> + + <td>Что-то пошло совсем не так. Ошибка выдается системой + самопроверки модуля активации и с высокой вероятностью + означает попытку взлома. В случае получения этой ошибки + дальнейшие операции с серийными номерами и активацией не + могут считаться безопасными.</td> + </tr> + + <tr> + <td>ACTIVATION_BAD_CODE</td> + + <td>6</td> + + <td>Данный код не найден в базе данных сервера активаций. + Возможно пользователь ошибся при вводе кода, так что можно + попросить его проверить правильность ввода данных.</td> + </tr> + + <tr> + <td>ACTIVATION_ALREADY_USED</td> + + <td>7</td> + + <td>Счетчик активаций этого кода дошел до нуля и дальнейшие + активации невозможны. Это не обозначает, что код плохой или + заблокирован - код хороший. Пользователю нужно связаться с + производителем ПО и докупить необходимое количество лицензий + или же деинсталлировать программу на других компьютерах, + чтобы увеличить значение счетчика в базе данных.</td> + </tr> + + <tr> + <td>ACTIVATION_SERIAL_UNKNOWN</td> + + <td>8</td> + + <td>Ошибка деактивации. Означает, что данный серийный + номер не найден в базе данных сервера. Соответственно, + деактивация не может быть проведена успешно.</td> + </tr> + + <tr> + <td>ACTIVATION_EXPIRED</td> + + <td>9</td> + + <td>Ошибка активации. Означает, что период действия кода активации истек.</td> + </tr> + + <tr> + <td>ACTIVATION_NOT_AVAILABLE</td> + + <td>10</td> + + <td>Ошибка означает, что активация/деактивация недоступна.</td> + </tr> + + </table> + + <h3>Маленькие хитрости</h3> + + <p>API Активации достаточно простое, так что с ним не должно + возникнуть сложностей. Не забудьте предоставить пользователям + интерфейс для оффлайн-активации, если онлайн-активация + завершилась неудачей из-за проблем с доступом в интернет. Также + не забывайте, что API Активации не сохраняет полученный серийный + номер и не передает его модулю лицензирования - это задача + разработчика. Нет необходимости вызывать API Активации при каждом + запуске приложения - достаточно вызвать его один раз, получить + серийный номер от WebLM, сохранить его в удобном месте и в + дальнейшем использовать только его.</p><br /> + <br /> + <br /> + <br /> + <br /> + <hr noshade="noshade" size="1" /> + + <div align="center"> + © 2006-2015 Copyright VMProtect Software + </div> +</body> +</html> |