Перейти к содержимому

Mytestxpro как узнать ответы

  • автор:

Снимаем пароль с тестов MyTestXPro

Год назад в своей старой статье я рассматривал процесс открытия защищенных паролем тестов MyTestX, а также процесс получения .mtf-файлов из .exe-файлов автономных тестов.
Прогресс не стоит на месте, и в последнее время все чаще встречаются просьбы открытия запароленных .mtx-файлов и их извлечения. Для справки: .mtf-файлы создаются в программе MyTestX (последняя версия 10.2.0.3 от 31.08.2012), .mtx-файлы создаются в программе MyTestXPro (последняя версия 11.0.0.37 от 30.08.2015), то есть MyTestX давно не обновляется, а MyTestXPro является платной программой и имеет свой, отличный от бесплатной версии, формат файлов. Таким образом, процесс, который я описывал в своей старой статье, не подходит для MyTestXPro. Давайте разберемся, что с этим делать.

Снимаем пароль с тестов MyTestX (НЕ PRO-версия!, .mtf)
Утилита для извлечения теста (.mtf/.mtx) из .exe-файла (пароль kaimi-io)

В этот раз я постараюсь минимизировать количество рассуждений и ассемблерных листингов, дам только краткое описание идеи. Начнем с извлечения тестов из автономных файлов. Тест содержится в ресурсах .exe-файла, в RCData->TEST, в этом можно убедиться, например, с помощью CFF Explorer. Вот, как это выглядит на примере сферического теста в вакууме:

cff-res

Но не спешите радоваться, тест хранится в зашифрованном виде. В этом можно убедиться, например, с помощью утилиты ent. Если сравнить оригинальный .mtx-файл и файл с данными извлеченными из ресурсов (RCData->TEST) автономного теста, то мы увидим, что энтропия файлов практически не отличается, однако значения распределения хи-квадрат отличаются более чем в 5 раз.

ent

Что это значит? Это значит, что, скорее всего, .mtx-файл просто сжат, а ресурс сжат и зашифрован. Почему? Можно прочитать тут. Я пробовал проанализировать, какой алгоритм шифрования был применен, но, по всей видимости, ответственный за процесс дешифровки код был виртуализован средствами VMProtect.

Логично предположить, что тест хранится в расшифрованном виде в памяти после запуска автономного теста. Однако, мне доводилось наблюдать версии, которые честно чистили за собой память, и тест в памяти по-простому найти не удавалось, но иногда тест все же присутствует в памяти без дополнительных манипуляций, в этом можно убедиться, например, с помощью OllyDbg, достаточно поискать характерную сигнатуру:

Соответственно, можно извлечь из памяти расшифрованный тест, таким образом мы получим оригинальный .mtx-файл.

Теперь разберемся с открытием защищенных паролем тестов в редакторе MyTestEditor. Все довольно просто. Каждый тест, после того как его содержимое будет расшифровано и/или распаковано, представлен в памяти программы несколькими классами. Один из классов, который отвечает за информацию и настройки теста, называется TTest, он обладает методом LoadFromStream, в этом методе заполняются поля класса, в том числе после FPasswordEdit, именно в нем хранится MD5 пароля, который запрашивается при открытии теста в редакторе.

ttest

Если это поле не заполнять, то пароль не будет запрошен, то есть достаточно тем или иным образом изменить этот фрагмент кода в памяти. Почему в памяти? Редактор защищен навесным протектором VMProtect, который проверяет целостность файла при запуске, а возня с протектором — лишнее и абсолютно ненужное занятие в данном случае.

Вот и все. Чтобы не делать вышеописанные процедуры руками — я написал простую утилиту на C#, которая умеет извлекать .mtx-файл из памяти автономного теста и должным образом править память MyTestEditor, чтобы он не запрашивал пароль при открытии защищенных тестов.

mytestxhelper

Как пользоваться для извлечения .mtx-файла из автономного теста (.exe-файла):

Этот вариант срабатывает не для всех версий:
1. Запускаете тест.
2. Запускаете утилиту.
3. В списке процессов слева находите имя процесса теста (совпадает с именем файла), кликаете по нему.
4. Справа выбираете MyTestStudent.
5. В Dump Path указываете путь, куда сохранить файл с тестом.
6. Нажимаете Dump Test, при успешном извлечении появится окно с текстом OK.
7. По указанному в Dump Path пути находите файл с тестом.

Этот вариант обычно срабатывает, но метод извлечения теста довольно специфичен и нестабилен:
1. Запускаете утилиту.
2. Справа выбираете MyTestStudent.
3. В EXE Path Указываете путь к автономному тесту (.exe-файлу).
4. В Dump Path указываете путь, куда сохранить файл с тестом.
5. Нажимаете Dump Test, при успешном извлечении появится окно с текстом OK.
6. По указанному в Dump Path пути находите файл с тестом.

Как пользоваться для открытия защищенных паролем .mtx-файлов в MyTestEditor:
1. Запускаете MyTestEditor.
2. Запускаете утилиту.
3. В списке процессов слева находите имя процесса редактора — MyTestEditor, кликаете по нему.
4. Справа выбираете MyTestEditor.
5. Нажимаете Patch, при успешной правке кода появится окно с текстом OK.
6. Открываете любой защищенный паролем тест в MyTestEditor, пароль не будет запрошен.

Утилита актуальна для MyTestXPro версии 11.0.0.37, но, в случае с извлечением .mtx-файлов, может подойти и для более старых версий.

Для работы необходим .NET Framework 2.0.
Скачать утилиту: MyTestXProHelper
Скачать MyTestXPro 11.0.0.37: sendspace, mega.nz

P.S.: Если тест не открывается редактором, то возможно у вас старый формат теста, который необходимо обновить с помощью набора утилит с официального сайта: ConverterMyTestAllOld.rar (зеркало на sendspace).

P.P.S.: d_x провел ревизию некоторых своих продуктов и обновил Proxy Checker Lite и StepFucker. Hail Assembly Language!

//kaimi.io/wp-content/uploads/2020/04/6807153.jpegАвтор Kaimi Опубликовано 15 сентября, 2015 16 июня, 2020 Рубрики .NET, Assembler, Для новичков Метки mtf, mtx, MyTestX, mytestxpro, OllyDbg, статистика, хи-квадрат

Name already in use

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

MyTestX — Взлом тестов

Надоело писать тесты и постоянно гуглить варианты. Проанализировав передаваемые данные, создал эти программы.

  • MyTestDownloader — Скачивание всех тестов с сервера
  • MyTestHack — Работает не со всеми версиями. Поэтому пользовались MyTestDownloader и открывали MyTestEditor_.exe (Открывал запороленные тесты)

About

Взлом тестов MyTestX

Resources

Stars

Watchers

Forks

Releases

Packages 0

Languages

Footer

© 2023 GitHub, Inc.

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

Конструктор тестов easyQuizzy

Время от времени сталкиваюсь с просьбами, касающимися программ для проведения компьютерного тестирования (MyTestX и easyQuizzy), которые заключаются либо в извлечении файла теста из .exe-файла (в случае с MyTestX), либо в открытии защищенного паролем теста. Набросал «деревянный» последовательный мануал для тех, кому необходимо самостоятельно извлечь тест или сделать, чтобы редактор позволял открыть тест при вводе любого пароля.

Нам понадобится отладчик, например, OllyDbg и программа для упрощенной работы со структурой PE-файла, например, CFF Explorer, также нам понадобится редактор тестов (элементарно ищется в Google), который мы будем «исправлять», и файл, содержащий тест, который необходимо открыть. Перейти к описанию про easyQuizzy Перейти к модифицированным редакторам для открытия тестов без пароля Снимаем пароль с тестов MyTestXPro (.mtx) Утилита для извлечения теста (.mtf/.mtx) из .exe-файла (пароль kaimi-io)

Для начала, разберем самую тривиальную проблему: как извлечь из .exe-файла файл с тестом — .mtf (речь о MyTestX). Берем .exe-файл, который содержит тест (я воспользовался экземпляром с форума) и открываем его в CFF Explorer. Сразу же переходим в раздел «Resource Directory» в колонке слева, далее, в списке справа, ищем «Resource Directory Entry … AKA: RCData», открываем выпадающий список и в нем ищем «Resource Directory Entry … AKA: MTA».

Этот ресурс фактически является .mtf-файлом, который нас интересует. Теперь нам необходимо извлечь его. Для этого обратимся к дочернему элементу последнего вышеупомянутого ресурса — «Resource Data Entry». Выделим его и увидим в нижней половине окна его атрибуты, нас интересуют поля «OffsetToData» и «Size».

Запомним значение поля «OffsetToData» и переключимся на «Address Converter» в списке слева. Теперь введем значение в поле RVA — мы получили физическое смещение интересующего нас ресурса относительно начала файла («File Offset»).

Воспользуемся встроенным hex-редактором, который расположен в нижней части окна и пометим это место (правая клавиша мыши, «Begin Of Block»), теперь прибавим к «File Offset» значение поля «Size», которое я упоминал выше: 003437E8 + 0001A50B = 0035DCF3 (значения указаны в hex, у вас значения могут отличаться), переместимся по этому адресу (кнопка с изогнутой стрелкой), отметим это место (правая клавиша мыши, «End Of Block»). Осталось сохранить выделенный фрагмент в отдельный файл. Снова нажмем правую клавишу, выберем Copy->Into New File, укажем имя файла, и готово (dx предлагает упрощенный метод: CFF Explorer->Resource Editor->RCData->»MTA»->правой кнопкой мыши Save Resource (Raw)).

Мы получили .mtf-файл, который можно открыть в редакторе тестов MyTestX — MyTestEditor. Однако, тест может быть защищен паролем. Давайте рассмотрим, как модифицировать редактор тестов, чтобы файл с тестом открывался при вводе любого пароля.

Запускаем редактор тестов MyTestEditor и отладчик OllyDbg. Аттачимся OllyDbg к процессу MyTestEditor (File->Attach). Мы оказываемся внутри ntdll.

Нажимаем Debug->Run и возобновляем работу приложения. Далее нажимаем правую клавишу где-нибудь в левом верхнем окне отладчика. В появившемся меню выбираем Go to->Expression, в появившемся окне вводим ReadFile (имя функции WinAPI, которая скорее всего будет использоваться для чтения содержимого файла с тестом).

В списке снизу выбираем kernel32.ReadFile и нажимаем «Follow expression». Мы находимся в начале функции ReadFile, теперь нам необходимо поставить breakpoint, чтобы отследить обращение программы к функции. Ставим breakpoint, для этого нажимаем правой клавишей на подсвеченной линии ассемблерного кода и выбираем Breakpoint->Toggle. Вообще, прежде чем ставить breakpoint, лучше сначала в MyTestEditor вызвать диалог открытия теста, иначе придется пропускать много обращений (F9) к ReadFile из не интересующих нас мест, их можно определить по значению на верхушке стек-фрейма (правое нижнее окно отладчика, строка с текстом «Return from kernel32.ReadFile to …»). Интересующий нас вызов будет выглядеть приблизительно так:

Как только мы поймали нужное обращение (оно произойдет, когда мы в диалоге открытия теста выберем наш тест, защищенный паролем, и нажмем «Открыть»), посмотрим внимательнее в правое нижнее окно отладчика (в нем мы видим содержимое стека), прокрутим окно вниз в поисках строки, которая представляет собой полный путь к файлу с тестом (нас интересует этот стек-фрейм, так как скорее всего он был сформирован в интересующей нас функции).

Поставим hardware breakpoint, чтобы отследить обращение по этому адресу. Для этого выберем строчку, которая содержит путь к тесту, нажмем правой клавишей мыши и выберем Breakpoint->Hardware… В открывшемся окне в первой колонке (Break on), выберем Access (R/W) и нажмем OK.

Продолжим выполнение программы (F9 или Debug->Run). Через какое-то время программа в очередной раз остановится, сработает наш свежепоставленный hardware breakpoint. У меня место срабатывания выглядело как-то так:

Напоминает какую-то промежуточную функцию для работы с файлом, поэтому воспользуемся несколько раз опцией Debug->Execute till return (Ctrl+F9), пока не окажемся в более «высокоуровневом» участке кода, где строится основная логика обработки файла с тестом.

Полистаем код. Нас интересуют всевозможные условные переходы (je, jne, jz, jnz и так далее), которые перепрыгивают более-менее внушительные фрагменты кода, скажем от 5 инструкций. Некоторые участки я сразу пропустил, где, как мне показалось, производятся неинтересные действия, как, например, в этом фрагменте:

Напоминает проверку версии теста. Мне так сразу показалось, но можно убедиться и опытным путем, поставив breakpoint на инструкции условного перехода и поменяв значение Z-флага в окне регистров справа, когда выполнение программы прервется на этом участке. Пролистаем немного вниз и наткнемся на следующую группу условных переходов:

Попробуем в лоб поменять Z-флаг на каждом переходе. То есть в MyTestStudent у нас открыт диалог выбора файла с тестом, мы ставим breakpoint на одном из переходов, в диалоге выбираем файл с тестом, который защищен паролем, наблюдаем окно, запрашивающее ввод пароля, вводим туда произвольный текст, после этого у нас должен сработать ранее установленный breakpoint, меняем Z-флаг и продолжаем выполнение программы нажатием F9. Мы увидим, что на вышеупомянутых двух переходах, при изменении Z-флага программа завершает свою работу, после этого запускается браузер, где открывается сайт с фрагментом законодательства: какая-то самопальная «защита» от простого взлома. Однако, при изменении логики условного перехода, который расположен чуть ниже, мы видим, что в программе предварительно открывается тест, хотя после этого программа все равно завершает свою работу и открывает браузер.

Для открытия браузера скорее всего используется функция WinAPI ShellExecute. Проверим наше предположение: снова нажимаем правую клавишу где-нибудь в левом верхнем окне отладчика, в появившемся меню выбираем Go to->Expression, в появившемся окне вводим имя нашей функции, переходим в начало функции и ставим там breakpoint. Снова выполним модификацию логики последнего, интересующего нас, условного перехода, и наш breakpoint срабатывает:

Воспользуемся несколько раз Debug->Execute till return (или Ctrl+F9), чтобы вернуться из недр shell32.dll и попасть в модуль MyTestEditor (следим за заголовком окна отладчика, там где в данный момент написано «»). Почти сразу попадаем в подобное место:

Здесь мы видим еще один условный переход, который нам необходимо исправить (на лету, либо заменив условный переход на безусловный — jmp). Получается, что нам нужно подправить два условных перехода, чтобы получить возможность открывать защищенный тест, вводя любой пароль. Заменим и проверим:

Мой тестовый .mtf-файл, защищенный паролем, открылся без проблем (ссылки на модифицированный редактор и пример файла с тестом находятся в конце статьи). После внесения необходимых изменений, нажимаем правой клавишей в левом верхнем окне отладчика, выбираем Edit->Copy all modifications to executable, в появившемся диалоге указываем имя файла и получаем модифицированный редактор тестов.

Переходим к той же самой проблеме открытия защищенных тестов, созданных с помощью программы easyQuizzy. В этом случае тест представляет собой .exe-файл, однако нет необходимости проводить с ним какие-то дополнительные манипуляции — редактор умеет открывать такие файлы.

Давайте запустим редактор файлов easyQuizzy, отладчик OllyDbg, подсоединим отладчик к процессу (здесь и далее я не буду детализировать тривиальные моменты работы с отладчиком, как в тексте до этого) и возобновим работу процесса. В этот раз воспользуемся другим способом поиска участка кода, который необходимо исправить. Как вы могли заметить, при открытии защищенного паролем теста, программа выдает сообщение «Incorrect password» (у меня язык интерфейса переключен на английский). Будем отталкиваться от этого.

Переключимся на основной исполняемый модуль easyQuizzy в отладчике (View->Executable modules, двойной клик по имени модуля, убедитесь, что в заголовке окна присутствует текст: «…module easyQuizzy»). Нажмем правой клавишей мыши в окне отладчика и найдем все строковые ресурсы, на которые существуют ссылки в исполняемом коде.

Перед нами появится перечень строк в одной большой таблице, найдем в ней строки с сообщением о некорректном пароле и поставим на них breakpoint’ы.

Пробуем открыть защищенный тест и тут же ловим срабатывание breakpoint’а.

Почему? Скорее всего программа подгружает необходимые строковые ресурсы при открытии теста, опираясь на некоторые внутренние идентификаторы. Бегло осмотрев функцию, где мы оказались, можно сделать вывод, что ничего особого интересного здесь не происходит. Единственный примечательный момент, это условный переход, отвечающий за отображение подсказки к паролю — ссылка на строку «Password hint:» в коде. Давайте рассмотрим функцию, откуда была вызвана эта функция (либо воспользовавшись Execute till return, либо посмотрев адрес возврата в стеке).

Мы оказались внутри занимательной функции, где можем наблюдать пропуск довольного большого фрагмента кода по условному переходу, вдобавок пропускаемый фрагмент содержит ссылку на строку «Incorrect password.».

Но как мы вообще попадаем в этот фрагмент кода? Прокрутим листинг немного вверх и увидим гораздо более интересный условный переход: он позволяет пропустить даже вызов функции, которая отображает нам диалог ввода пароля.

Пробуем изменить логику его работы (например, забиваем условный переход NOP’ами) — вуаля, защищенный тест открывается не запрашивая пароль.

Подведем итог: как мы видим, защита теста паролем в общем-то номинальная и ее легко преодолеть при наличии базовых навыков работы с отладчиком. Файлы с тестами, на которых я проводил эксперименты: . Оригинальные редакторы тестов: MyTestX и easyQuizzy.

Модифицированные редакторы тестов, позволяющие открыть тест, не зная оригинального пароля:☯ mega.co.nz: MyTestX-mod, easyQuizzy-mod ☯ sendspace.com: MyTestX-mod, easyQuizzy-mod

Конструктор тестов easyQuizzy

  • Что такое easyQuizzy?
  • Как начать работу с программой и создать тест?
  • Как происходит тестирование?
  • Нужно ли устанавливать дополнительные программы для прохождения тестов на другом компьютере?
  • Какие типы вопросов могут быть использованы при составлении теста?
  • Можно ли вставлять рисунки и формулы в текст вопросов и ответов?
  • Можно ли объединить вопросы из нескольких тестов?
  • Какие доступны системы оценивания результатов прохождения теста?
  • На каких языках можно создавать тесты?
  • Какие возможны варианты построения итогового отчета?
  • Можно ли защитить тесты от просмотра и редактирования?
  • Можно ли «подсмотреть» правильные ответы теста?
  • Как опубликовать тесты easyQuizzy в интернете: на сайтах, в блогах?
  • Как опубликовать тесты easyQuizzy в интернете, если правилами хостинга запрещено загружать на него исполняемые файлы (тестов)?
  • Как ввести специальный символ, которого нет на клавиатуре?
  • Как очистить список имён?

Что такое easyQuizzy?
easyQuizzy — это программа, с помощью которой можно создавать и редактировать компьютерные тесты знаний. Используя подготовленные тесты, можно облегчить работу преподавателей при проведении ежедневных «быстрых» опросов учеников и ускорить проверку результатов, т. к. выставление оценки происходит автоматически на основе системы оценивания, выбранной при создании теста.

Как начать работу с программой и создать тест?

Для начала запустите редактор easyQuizzy.

Программа easyQuizzy предоставляет единый последовательный интерфейс для создания тестов. Начните создание теста со вкладки «Информация о тесте». Сформулируйте название и описание теста, а также укажите автора теста.

Затем перейдите на вкладку «Вопросы и ответы». Добавление вопросов, вариантов ответов и последующий выбор правильных вариантов не должно вызвать затруднений.

В текст вопросов и вариантов ответов можно вставлять картинки, формулы и специальные символы.

После формирования списка вопросов, на вкладке «Настройки теста» настройте параметры теста: количество задаваемых вопросов и их порядок, систему оценивания, ограничение времени и формат итогового отчета.

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

Как происходит тестирование?

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

Для ответа на вопрос достаточно выбрать правильный ответ (ответы) и подтвердить выбор.

По окончании тестирования выставляется рекомендуемая оценка.

Вы также можете распечатать итоговый отчет или сохранить его и отправить по электронной почте.

Пройдите демонстрационный тест «Твой уровень владения интернетом» (1 Мбайт, 30 вопросов) и оцените элегантность описанного решения.

Нужно ли устанавливать дополнительные программы для прохождения тестов на другом компьютере?

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

Созданные тесты удобно включать в состав электронных учебников для дистанционного обучения и самообразования.

Какие типы вопросов могут быть использованы при составлении теста?

При составлении теста можно использовать следующие типы вопросов:

  • Альтернативный выбор
  • Выбор одного правильного ответа
  • Выбор нескольких правильных ответов
  • Установление правильной последовательности
  • Установление соответствия
  • Свободный ответ

Можно ли вставлять рисунки и формулы в текст вопросов и ответов?

Да, можно. Редактор тестов позволяет вставлять рисунки в любом формате и менять их размеры. При наличии на компьютере установленного пакета Microsoft Office 95 или более поздней версии, возможна вставка в тест формул Microsoft Equation.

На компьютерах тестируемых пользователей для отображения формул при запуске теста наличие пакета Microsoft Office не требуется.

Можно ли объединить вопросы из нескольких тестов?

Да, можно. Создайте новый или откройте существующий тест, в котором хотите объединить вопросы из нескольких тестов. Выберите пункт меню «Вопросы → Добавить вопросы из файла теста…». В диалоге укажите файл теста и подтвердите выбор. Все вопросы из выбранного теста будут добавлены в конец списка вопросов текущего теста.

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

Вы можете настроить одну из распространенных систем оценивания под свои критерии, или же создать полностью свою систему оценивания с любым количество оценок.

easyQuizzy позволяет установить следующие системы оценивания:

Интернациональные системы оценивания

  • Европейская кредитно-трансферная и накопительная система (ECTS)
  • Международный бакалавриат
  • Зачётная система
  • Академическая оценка США
  • Расширенная академическая оценка США
  • Упрощенная система оценивания США (E-S-N-U)
  • Свидетельство о среднем образовании Великобритании
  • Общее свидетельство об образовании Великобритании

Системы оценивания СНГ

  • 5-балльная система
  • 12-балльная система

Жёстко заданные системы оценивания

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

  • Сумма баллов
  • 100-балльная система

Пользовательская система оценивания

. Позволяет вам создать свою собственную систему оценивания самостоятельно.

После выбора нужной системы из списка ее можно настроить в редакторе систем оценивания.

Система оценивания easyQuizzy строится на том, что все вопросы теста равнозначны по сложности и одинаково влияют на результирующую оценку; ответ на вопрос может быть либо полностью правильным, либо полностью неправильным.

На каких языках можно создавать тесты?

  • на английском (In English);
  • на болгарском (Български език);
  • на французком (Francais);
  • на немецком (Deutsch);
  • на казахском (Қазақ тілі);
  • на латышском (Latviešu valoda);
  • на польском (Jezyk Polski);
  • на португальском (Portugues);
  • на румынском (Romana);
  • на русском;
  • на сербском (Srpski jezik, Српски језик);
  • на украинском (Укрїнською мовою).

Язык интерфейса теста соответствует языку, который был выбран в редакторе тестов easyQuizzy при создании (редактировании) и сохранении теста. Что бы изменить язык интерфейса, выберите пункт меню «Вид → Язык интерфейса».

Какие возможны варианты построения итогового отчета?

Итоговый отчёт настраивается в пару кликов.

В отчёт можно включить вопросы с правильными, неправильными ответами и вопросы без ответов; ответы тестируемого и, в случае, если дан неправильный ответ, то правильные ответы на вопрос.

Можно ли защитить тесты от просмотра и редактирования?

Да, можно. Для этого выберите пункт меню «Файл → Установить пароль…». В диалоговом окне, чтобы исключить ошибки ввода, ведите пароль два раза и нажмите кнопку «ОК». После этого сохраните файл.

Теперь открыть файл в редакторе будет возможно только при правильном вводе пароля.

Можно ли «подсмотреть» правильные ответы теста?

Нет. Создаваемые в easyQuizzy тесты зашифрованы и нечитабельны при просмотре другими программами.

Однако, если вы не установили пароль на открытие теста, то этот тест можно будет открыть в easyQuizzy и увидеть правильные ответы. Также правильные ответы показываются в конце тестирования, если была установлена настройка отчета «Показывать правильные ответы».

Как опубликовать тесты easyQuizzy в интернете: на сайтах, в блогах?

Для публикации достаточно выложить исполняемый файл теста (с расширением exe) на сайт с помощью протокола FTP или другим способом, и дать ссылку на загрузку.

Например, на нашем сайте так опубликован тест «Твой уровень владения интернетом», доступный для загрузки по ссылке . При клике пользователем на такую ссылку файл автоматически загружается на компьютер и после загрузки готов к прохождению.

Как опубликовать тесты easyQuizzy в интернете, если правилами хостинга запрещено загружать на него исполняемые файлы (тестов)?

В таком случае мы рекомендуем вам использовать бесплатный «облачный» сервис Дропбокс (https://www.dropbox.com/), который позволяет пользователям хранить и делиться файлами с другими людьми в интернете.

После того как вы добавите тест easyQuizzy в «публичную» папку дропбокса, на него можно давать ссылки с вашего сайта или блога.

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

Запрашиваемый документ /attachment139 не был найден на сервере.

короче так. долго ковырялся в нем, это или очень хитрая прогрмма или очень старая. при запуске сначало появляется форма (это прога распаковщик), в которой нужно выбрать тип теста. выбираю, жму ок. и что же происходит дальше?! программа создает файлы (в темповскую папку) один за другим и пишет в них содержимое своих буферов. вот что это за файлы
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кб). В инете я не нашел чем их открыть, но могу сказать что это и есть сам тест, но в каком то страном формате типа презинтации только времен дос.
вот фрагмент

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *