Цитата:
Сообщение от darkevil
Попробуй эту версию бинарника.
http://rghost.ru/45873966
В ней я проверку в том месте залочил, в теории триал должен быть теперь бесконечный. На практике хз не могу проверить =(
|
Эм, а я в своей версии убрал всякую другую гадость сейчас и не вспомню что убирал)
На практике проверяется так, включается программа и ждать 2 часа. :-)
Добавлено через 33 минуты
Запустил 3 разных варианта, 1 твой и 2 своих. Посмотрим, какой из вариантов упадет через 2 часа. Пы.Сы. 17:18 Мск
Добавлено через 2 часа 35 минут
Все 3 выключились.
Добавлено через 2 часа 51 минуту
Покопался в логе нашел стек, потом полез в рефлектор и нашел такой код
internal void ke(object object_0)
{
try
{
this.ge.Dispose();
}
catch
{
}
try
{
Cle.Ge().ke((CGe) 0x3);
if (Cle.Ge().Ne() == ((CXe) 0x2))
{
Cle.Ge().xe(Cle.Ge().method_0());
}
if (Cle.Ge().Ne() == ((CXe) 0x1))
{
Cle.Ge().Je(Cle.Ge().method_0());
}
if (this.Je.je)
{
C9e.C3e.ke = new Timer(new TimerCallback(new C9e.C3e().method_0), null, 0x15f90, 0x7530);
if (this.Je.bool_3)
{
try
{
C9e.EnableWindow(Process.GetCurrentProcess().MainWindowHandle, false);
}
catch
{
}
}
Code:
Мне кажется - это и есть ТО, что нужно убрать.
Т.е. мне кажется, что эти два значения складываются 0x15f90, 0x7530 и получается 120 минут :-)
Почему я так решил? В том же месте есть такая строка
L_0007: callvirt instance void [mscorlib]System.Threading.Timer::Dispose()Code:
По этому мне показалось, что моя догадка верна и нужно либо полностью убрать счетчик, т.е. вызов опкода или изменить значение. Сначала проверю со значением, потом уберу вызов и протестирую ещё раз.
Запустил на тест свою версию exe, без окна при старте и с измененными числами в этом коде. 19.39 Мск
Добавлено через 5 часов 52 минуты
Нужно, что то другое придумывать, мой вариант не проканал.