Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Ребята помогите "вытащить" информацию из исполняющего файла .exe

79K
29 февраля 2012 года
mlipatoff
7 / / 29.02.2012
Ребята, это тест по высшей математике. Мне нужно вытащить из него все вопросы из экзаменационной части с вариантом правильного ответа. Помогите пожалуйста
Прикрепленные файлы:
772 Кб
Загрузок: 1.6K
79K
29 февраля 2012 года
mlipatoff
7 / / 29.02.2012
Пробовал через Restorator. Сохраняет файл в расширении .res
Там программный код. Не знаю через что его открыть чтобы увидеть русский текст:) строго не судите. Я ноль в программировании
73K
29 февраля 2012 года
bolt7
33 / / 20.02.2012
Запрашиваемый документ /attachment139 не был найден на сервере.

перезалей кудато
79K
29 февраля 2012 года
mlipatoff
7 / / 29.02.2012
http://rghost.ru/36780466
вот. Залил на Rghost
73K
01 марта 2012 года
bolt7
33 / / 20.02.2012
короче так. долго ковырялся в нем, это или очень хитрая прогрмма или очень старая. при запуске сначало появляется форма (это прога распаковщик), в которой нужно выбрать тип теста. выбираю, жму ок. и что же происходит дальше?! программа создает файлы (в темповскую папку) один за другим и пишет в них содержимое своих буферов. вот что это за файлы
MathTest.exe - по первым байтам буфера 'MZ' я понял что это исполнительный файл вшитый в программу, потом когда показалось название подтвердилось
MathTest.tgf
MathTest.tdf
MathTest - это ярлык для програмы MathTest.exe, зачем?! наверное для полноэкранного режима.
После этого запускается прога MathTest. А программа распаковщик создает MathTest.ini пишет туда 4 байта и ожидает ее завершение. Кстате когда устроить это завершение, то распаковщик создает опять MathTest.ini и пишет туда какието другие 4 байта чем в первый раз, создает опять файл MathTest.exe, загружает его как длл (это и есть библиотека судя по входной функции DllEntryPoint) и вызывает функцию Go, которая пишет в реестр локальное время зачем то, потом править в системной директории файл wininit.ini, как имено уже не стал разбиратся.
А теперь вернемся к нашей основной програмке MathTest, кстате это дос програмулина, я только понял что она считвает какойто файл в память и передает управление куда не могу сказать или на этот файл или на часть своего тела которая умеет работать с этим файломм.
И теперь самое интересное это те 2 файла MathTest.tgf (1.85 мб) и MathTest.tdf (21кб). В инете я не нашел чем их открыть, но могу сказать что это и есть сам тест, но в каком то страном формате типа презинтации только времен дос.
вот фрагмент

 
Код:
\page{1}            (1)
\out{25,40}{0000}
\item_r{0001}
\item{0002}
\item{0003}
\item{0004}
\item{0005}
\answer{150}{160}
\endp

Тут можно говорить уже пр какойто язык разметки, описывается какой вопрос, варианты ответа, и подтверждения. К сожелению все по индексам. Сами ресурсы хранятся в соседнем файле, тоесть строчка \answer{150}{160} это картинки да/нет при подтверждении. Как проверяются правильны варианты пока не знаю. Но есть интресные штучки

 
Код:
\required{15}

можно поменять количество задаваемых вопросов

 
Код:
\time{900}

900 секунд это 15 минут, намек понятен как можно растянуть удовольствие.
Пока все что нарыл, мб поже отпишусь.
73K
01 марта 2012 года
bolt7
33 / / 20.02.2012
я придумал как достать правильные ответы, но там 150 вопросов! ты готов их всех переписывать? вернее мне нужно сначало эти 150 записей исправить ручками... вернемся в поиску ответов, должно получится но щас уже позно пробывать, спать нужно. идея состоит в следущем - я знаю какой номер ответа правильный, но не знаю как он выглядит потому что он упакован зашифрован и ваше фиг поймеш что там с ним сделали, но сама пога знает формат и показывает его нам, значит сделаем так - из всех 4 ответов чтоб он показывал во всех 4 записях 1 правильный(есть воросы и по 2 правельных но не страшно), запускаем исправленую прогу, переписываем ответы на вопросы(150!!!!);
73K
01 марта 2012 года
bolt7
33 / / 20.02.2012
а можно и так сделать)))
не-не я не жулик я просто хорошо знаю математику)))



если еще надо, то завтра когда прийду скину как сделать, всмысле уже сегодня
79K
01 марта 2012 года
mlipatoff
7 / / 29.02.2012
Да, я готов переписать все 150 вопросов/ответов=) мне нужно только понять этот алгоритм))) помоги пожалуйста))))))))
79K
01 марта 2012 года
mlipatoff
7 / / 29.02.2012
bolt7, я очень жду тебя здесь сегодня))))))
79K
01 марта 2012 года
mlipatoff
7 / / 29.02.2012
bolt7, напиши мне в скайпе, пожалуйста)) завтра утром тест)) Время Иркутское))

буду очень благодарен

skype: misha-mihon
73K
01 марта 2012 года
bolt7
33 / / 20.02.2012
залил Новая папка.rar на FileShare.in.ua, теперь расказываю как работает. это распакованый тест, и его нужно запускать по-особому.
1. Сначало нужно скопирывать содержимое папки в путь где нет пробелов, тоесть файлы должны быть например в папке С:\Folder\ или другой вариант открыть консоль cmd, скопирывать путь к папке (где бы не находилась) написать в консоле cd и вставить путь, чтоб текущая директория стала та, где файлы лежат.
2. Если скопирывал просто в новую папку то нажимаеш Пуск/Выполнить... пишеш туда С:\Folder\MathTest.exe mathtest и ок. должна запстится. Если открывал консоль тогда пишеш просто MathTest.exe mathtest.

Теперь как настраивать, если жмеш контрол+альт+дел она сворачивается, это пригодтся если выйти надо до завершения теста. Править нужно файл MathTest.tdf.
В папке есть еще original MathTest.tdf, это оригинальный файл, которого ты делаеш копию перед тем как игратся, и переименовываеш в MathTest.tdf. том что щас MathTest.tdf настройки чтоб все ответы считались правильными. Чтоб узнать правильный ответ нужно подругому сделать.
Открываеш MathTest.tdf через блокнот (оригинальный, а не тот что я тестил), там куча записей нас интересует такие вот групы

 
Код:
\page{1}            (1)
\out{25,40}{0000}
\item_r{0001}
\item{0002}
\item{0003}
\item{0004}
\item{0005}
\answer{150}{160}
\endp

что означают нужные строчки. Представь что это документ ХТМЛ, и тут размещаются порядок отображения картинок. Все картинки имеют номера, тут мы просто пишем какую показать.
\out{25,40}{0000} отображает картинку с вопросом под номером 0000
\item_r{0001} пишет какой ответ считается правильным
\item{0002} отображает картинки с другими вариантами ответов.
Тоесть ты знаеш какой правильный ответ для каждого теста по его номеру, там будут и по 2 правельных(или это я уже так напортил что у меня было по 2, короче если будут 2 то копируеш во все 1 вариант, и в 1 ячейку другой, там дальше поймеш, я просто заранее написал про 2 если будут). но как узнать какой его вид картинка? Никак. Делаем так

 
Код:
\item_r{0001}
\item{0001}
\item{0001}
\item{0001}
\item{0001}
\answer{150}{160}
\endp

Тоесть копируеш поле правельного ответа во все строчки которые должны быть показаны, и у тебя на екране появится вопрос и там все одинаковые ответы. Они и будут правильные. Вот так правиш все 150 тестов, только внимательно, Копирывать индекс елемента \item_r во все \item этого же теста.
Но так нам покажется за раз только 15 тестов, а нам нужно все. Чтоб гарантировано запустить 150 вопросов нужно помается.
В самом начале файла идут строчки

 
Код:
\order
\section{3}
...
\section{1}
\ask


и в тестах есть первое поле
 
Код:
\page{1}            (5)

и повторяются \page{1} до \page{6}.
эти \section{1} означают что тут будет генерирыватся тест с номером 1, тоесть все тесты с заголовком page{1}.
Чтоб заставить показатся все тесты, вместо

 
Код:
\order
\section{3}
...
\section{6}
\section{3}
\section{2}
\section{3}
\ask

пишешь

 
Код:
\order
\section{1}
\section{2}
\section{3}
...
\section{150}
\ask

а там где сами тесты, переписываеш номера попорядку

 
Код:
\page{1}            (1)
...
\endp
\page{2}            (2)
...
\endp
\page{3}            (3)
...
\endp
\page{150}            (150)

Сохраняеш файл и запускаеш прогу и переписываеш ответы. Кстате то что они все онинаковы не означает что любой правельный, у них просто правельный текст, а не положение, так что не растраивайся когда в конце теста е будет 150 правильны ответа. Зато когда запустиш оригинал то те ответы которые ты выписал будут правельный.
Удачи и учи математеку!
79K
01 марта 2012 года
mlipatoff
7 / / 29.02.2012
Пожалуйста напиши мне в скайпе misha-mihon . Или скажи свой ник. Всего пару вопросов;)
73K
01 марта 2012 года
bolt7
33 / / 20.02.2012
добавил
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог