Цитата:
Сообщение от Zubastic
Немного не так действуешь. Тебе нужно заставить программу думать, что она не триальная, а нормальная. Смотрим где грузится файл с лицензией и меняем флаг на противоположный. И никаких мучений с таймером.
http://www.insidepro.com/kk/140/140r.shtml вот как это тут сделано.
|
Я этой логики не понимаю просто. Вот я убрал из кода все выключения программы, которые нашел.
Что то типа таких удалил:
private class C3e
{
internal static Timer ke;
internal void method_0(object object_0)
{
ke.Dispose();
try
{
C9e.TerminateProcess(C9e.GetCurrentProcess(), 1);
}
catch
{
}
}
}
Code: C
А толку нету, выходит все равно.
Можешь дать какой нибудь другой пример?
Добавлено через 1 час 52 минуты
А так же, подскажите, что значит это?
Код:
internal int method_0(int int_0)
{
if (int_0 < 0)
{
throw new Exception("upperBound=" + int_0.ToString() + "; upperBound must be >=0");
}
uint num = this.Qqe ^ (this.Qqe << 11);
this.Qqe = this.Qje;
this.Qje = this.Q1e;
this.Q1e = this.QTe;
return (int) ((4.6566128730773926E-10 * (0x7fffffff & (this.QTe = (this.QTe ^ (this.QTe >> 0x13)) ^ (num ^ (num >> 8))))) * int_0);
}
А именно меня интересует вот это
Код:
return (int) ((4.6566128730773926E-10 * (0x7fffffff & (this.QTe = (this.QTe ^ (this.QTe >> 0x13)) ^ (num ^ (num >> 8))))) * int_0);
Я так понимаю это выражение математическое, каким образом оно считается? Почитал в msdn, но нечего не понял.