Войти

Показать полную графическую версию : [решено] Можно ли как-нибудь найти счётчик времени работы программы?


Страниц : [1] 2

Денис Пирожков
06-11-2011, 15:58
Всем Привет. Интересует такой момент. Допустим запускаем программу любую ну к примеру меня интересует DC клиент и вот скажем она запущена и работает ровно час. Я бы хотел найти бы эту цифру времени в самой запущенной программе. То есть к примеру у меня имеется программа DC клиент собственная разработка интернет-провайдера она имеет этот счётчик где-то внутри себя. Поскольку когда она у меня включённая, то самое большое время она передаёт в виде статистики то ли на хаб, то ли сразу на внутренний сайт. Где я вижу что максимальное время работы у меня было скажем 48часов. Я бы хотел найти этот счётчик времени, а именно число и изменить его на другое. Чтобы получилось так. Программа скажем запущена и работает часа 3 или 4 но я нахожу это значение в программе и меняю его на 120 часов. Таким образом при закрытии программы передастся статистика как-будто у меня клиент работал 120 часов не выключаясь.

Вопрос. Можно ли как-нибудь найти счётчик времени работы программы?

freese
06-11-2011, 16:09
Денис Пирожков, в твоем случае, счетчик стоит на сервере DC, он и считает сколько ты был к нему подключен

yurfed
06-11-2011, 16:18
Можно ли как-нибудь найти счётчик времени работы программы? »
Может такое подойдёт LiderControl (http://freesoft.ru/?id=10666) или TimeLocker (http://freesoft.ru/?id=10666)

Денис Пирожков
06-11-2011, 16:26
freese, Да вот как раз он в клиенте стоит. Поскольку одному удалось там как-то поковыряться и исправить время. Я по этому тему и создал поскольку точно знаю что это возможно. Я просто не знаю как эти данные как время работы клиента он нашёл и поправил.

yurfed, Судя по описание это не то что мне нужно, да и к тому же она не устанавливается на мою ОС Вин 7 х64

Денис Пирожков
06-11-2011, 17:22
Вот к примеру мы видим в программе 1Мб, а в программе это число прописано так 1048576. А когда в программе я вижу 1 час то как оно прописано в программе?

lxa85
06-11-2011, 17:28
А когда в программе я вижу 1 час то как оно прописано в программе? »
Как угодно. Целым числом, числом с плавающей запятой, символом, результатом функции получения времени.

rsod
06-11-2011, 19:30
из разряда примитивных методов
изменить системную дату на год назад, после запуска программы на год вперёд переставить.
посложнее
переводим дату, запускаем программу, потом отправляем систему в "гибернацию", залезаем в bios, возвращаем дату на место, загружаем систему

Денис Пирожков
07-11-2011, 12:15
rsod, Слушай можно по подробней, я что не совсем понял последовательность.

rsod
07-11-2011, 12:21
Денис Пирожков, можно попробовать изменить дату в системе на пару дней назад, запустить клиента и во время его работы дату изменить на верную.

Денис Пирожков
07-11-2011, 12:27
rsod, Сделал так. В правом нижнем углу время дата поменял дату на 2 месяца назад. Включил клиента DC поменял дату вперёд на сегодня результат ноль. То есть не сработало.

Вариант с "гибернацией" тоже не помог к сожалению.

rsod
07-11-2011, 12:32
Денис Пирожков, перезагрузитесь, зайдите в bios, измените дату там, загрузите систему, запустите клиент, перейдите в режим гибернации (пуск - гибернация), включите компьютер, зайдите в bios, верните дату на нормальную, и затем загрузите систему. Возможно, поможет. Можно подобную манипуляцию на виртуальной машине проделать.

Денис Пирожков
07-11-2011, 12:34
rsod, Сделал я уже ответил на этот метод. Просто я на пару секунд успел по раньше отредактировать сообщение своё предыдущее. Не помогло одним словом.

rsod
07-11-2011, 12:35
Значит, программа получает время извне.
Значится можно сделать так: подменить пакет с временем, который передаётся/принимается. Но для этого нужна программа, которая этот пакет подменяет. Найти пакет можно с помощью wireshark, а вот подменить - я не знаю. Я вообще сам когда-то искал такую программу, достаточно долго, но безрезультатно

Денис Пирожков
07-11-2011, 12:40
rsod, Вот я и говорю что этот клиент отправляет статистику. Просто нужна как вы говорите сторонняя программа чтобы найти это значение и исправить его. Попробую поискать ту программу которую вы порекомендовали.

rsod, Нашёл программу. Самое интересное её в сети разместил тот кто изменил эти данные. Аха-ха приколист блин. Но я профан. Как ей искать и самое главное что искать какие значения прога к тому же на английском.

lxa85
07-11-2011, 12:49
Можно вопрос?
Вы о чем? Какое, блин, время? Какая, блин, программа? Какой, блин, клиент?!? Какая блоха?! (с)
Что вообще происходит, что требуется?
Денис Пирожков, можно что-нибудь вразумительное по проблеме услышать?

Денис Пирожков
07-11-2011, 12:54
lxa85, Можно. Моё первое сообщение внимательно прочитайте чтобы мне его не переписывать и всё понятно станет что я хочу сделать. Другие же пользователи поняли.

lxa85
07-11-2011, 13:46
Иожик! Ладно, что-то я где-то упустил.
А мысль о том, что время считается на стороне сервера, не прижилась?
Денис Пирожков, в твоем случае, счетчик стоит на сервере DC, он и считает сколько ты был к нему подключен »

Что за DC клиент? Протокол DC изучался? Раз уж мы говорим о подмене пакетов.

Ment69
07-11-2011, 14:04
Денис Пирожков, Представьте себе что вы держите один конец доски, а я другой и я считаю до десяти и отпускаю конец. Мне глубоко будет пофигу на ваши счетчики я буду только знать что на другом конце вы и как только у меня будет "десять" произойдет отключение.
Это я пытаюсь вам объяснить что ваши махинации на вашем компьютере, никак не повлияют на таймер, находящийся на сервере!

Денис Пирожков
07-11-2011, 14:11
lxa85, Какая разница какой DC клиент. Я же написал это собственная разработка провайдера принцип работы что и у Флайлинка только интерфейс и оформление своё. Мне нужно изменить время работы клиента о чём я уже писал. Допустим программа включена и работает 2 часа а мне нужно изменить на скажем на 120 часов. Чтобы статистика ушла на хаб или на внутренний сайт не важно куда, но ушла с данными как будто клиент работал вместо 2 часов все 120 часов. Если знаете как сделать тогда предложите свои варианты, вместо того чем засыпать меня вопросами. Я помоему тему создал так чтобы всё было разжевано и понятно. Возьми для себя в качестве примера не мой клиент а скажем тот же Флайлинк. И скажите можете ли осуществить замену данных о времени работы клиента с 2 часов на 120. Если можете то подскажите варианты как сделать.

И ещё раз повторю, а то я смотрю вам лень читать мои сообщения и вы задаёте не нужные вопросы на которые я уже ответил. Одному человеку это удалось сделать. Сидя дома у ПК открыл клиент DC и открыл другую программу (какую именно я не знаю сам, знал бы сказал) и при помощи неё искал значение времени то есть клиент отработал у него скажем 1 час он не выключая обе программы нашёл этой сторонней программой этот 1 час и поменял на 180 часов. И закрыл клиент DC, в результате чего ушла статистика что будто у него работал клиент 180 часов.

Теперь я надеюсь полностью обрисовал картину того что я хочу сделать, найти и изменить.

Если кто знает как это делать прошу подсказать.

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

lxa85
07-11-2011, 14:43
Денис Пирожков, начало темы начиналось с Вот к примеру мы видим в программе 1Мб, а в программе это число прописано так 1048576. А когда в программе я вижу 1 час то как оно прописано в программе? »Потом темы объединили. Отсюда все непонятности.
К теме:
Я же написал это собственная разработка провайдера принцип работы что и у Флайлинка »
Берем flylincdc (http://code.google.com/p/flylinkdc/source/browse/#svn%2Ftrunk%2Fclient) и ищем протокол взаимодействия с сервером. Ну или список переменных программы, в одной из которых должно храниться время.




© OSzone.net 2001-2012