mirror of
https://github.com/Obfuscator-Collections/VMProtect.git
synced 2024-12-28 01:09:28 +03:00
5ec92ee05e
Version 3.x.x
116 lines
6.4 KiB
HTML
116 lines
6.4 KiB
HTML
<!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>Генератор ключей: .Net-версия</title>
|
||
<style type="text/css">
|
||
/*<![CDATA[*/
|
||
div.c2 {text-align: center}
|
||
p.c1 {color:red;}
|
||
/*]]>*/
|
||
</style>
|
||
</head>
|
||
|
||
<body>
|
||
<h1>Генераторы ключей: .Net-версия</h1>
|
||
|
||
<h3>Описание</h3>
|
||
|
||
<p>.Net-версия генератора ключей преставляет собой сборку,
|
||
содержащую все необходимое для генерации серийных номеров.
|
||
Исходные коды находятся в каталоге <strong>Keygen\Net</strong> в
|
||
виде двух проектов: KeyGen (непосредственно генератор серийных
|
||
номеров) и Usage (пример использования генератора).</p>
|
||
|
||
<p class="c1">Генератор поставляется в исходных кодах, чтобы
|
||
иметь возможность пересобрать его под нужную версию .Net
|
||
Framework, однако крайне не рекомендуется вносить изменения в его
|
||
код. В будущих версиях VMProtect возможно добавление новых
|
||
возможностей в генератор, что приведет к необходимости повторной
|
||
модификации кода. Также возможно появление трудноуловимых ошибок.
|
||
В случае нахождения ошибки в оригинальном коде генератора или
|
||
пожеланий по его улучшению - обращайтесь в службу
|
||
поддержки.</p>
|
||
|
||
<h3>Использование генератора</h3>
|
||
|
||
<p>Возьмите за основу код из проекта <strong>Usage</strong>,
|
||
добавьте в Ваш проект ссылку на сборку VMProtect.KeyGen.dll,
|
||
после чего Вы сможете генерировать серийные номера в вашем
|
||
приложении. Для нормальной работы генератор должен понимать,
|
||
к какому продукту Вы собираетесь генерировать серийные номера.
|
||
Для этого на закладке "Лицензии" VMProtect нажмите кнопку
|
||
«Экспорт» и в выпадающем списке выберите «Параметры для
|
||
KeyGen.Net». В текстовом поле ниже появятся несколько строк
|
||
текста, которые необходимо скопировать и перенести в Ваше
|
||
приложение в виде строковой константы.</p>
|
||
|
||
<p>Пример вызова генератора представлен ниже:</p>
|
||
<pre>
|
||
try
|
||
{
|
||
string data = @""; // put the exported data here
|
||
Generator g = new Generator(data);
|
||
g.UserName = "John Doe";
|
||
g.EMail = "john@doe.com";
|
||
g.ExpirationDate = DateTime.Now.AddMonths(1);
|
||
g.MaxBuildDate = DateTime.Now.AddYears(1);
|
||
g.RunningTimeLimit = 15;
|
||
g.HardwareID = "AQIDBAgHBgU=";
|
||
g.UserData = new byte[] { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
|
||
string serial = g.Generate();
|
||
Console.WriteLine("Serial number:\n{0}\n", serial);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
Console.WriteLine("Error: {0}", ex);
|
||
}
|
||
|
||
</pre>
|
||
|
||
<p>Строку, скопированную в окне экспорта VMProtect, необходимо
|
||
поместить в переменную <strong>data</strong>, которая будет
|
||
передана параметром в конструктор класса генератора серийных
|
||
номеров. В случае каких-либо проблем с разбором данных продукта,
|
||
конструктор выбросит исключение с описанием проблемы. Если
|
||
конструктор отработал успешно, то генератор готов к созданию
|
||
серийных номеров.</p>
|
||
|
||
<p>Серийный номер может содержать различную информацию, которая
|
||
задается через свойства генератора. Пример выше показывает, как
|
||
заполнить абсолютно все поля серийного номера. Отдельные поля
|
||
имеют ограничения. Например, поля <strong>User Name</strong> и
|
||
<strong>E-Mail</strong> не могут принять строки, которые в
|
||
кодировке UTF-8 будут иметь длину, превышающую 255 символов. В
|
||
случае подачи некорректных данных, свойства выбрасывают исключения с
|
||
описанием проблемы.</p>
|
||
|
||
<p>По окончании настройки генератора вызывается метод
|
||
<strong>Generate()</strong>, который и создает серийный номер. На
|
||
этом этапе происходит компоновка всех данных номера, подсчет
|
||
контрольных сумм и, непосредственно, шифрование. В случае, если
|
||
объем данных превышает максимально допустимую длину, метод выбросит
|
||
исключение.</p>
|
||
|
||
<p>В случае, если необходимо сгенерировать несколько серийных
|
||
номеров, можно использовать класс генератора несколько раз, не
|
||
пересоздавая его. Чтобы "очистить" любое из свойств генератора,
|
||
ему нужно присвоить значение <strong>null</strong>.</p><br />
|
||
<br />
|
||
<br />
|
||
<br />
|
||
<br />
|
||
<hr noshade="noshade" size="1" />
|
||
|
||
<div align="center">
|
||
© 2006-2015 Copyright VMProtect Software
|
||
</div>
|
||
</body>
|
||
</html>
|