Тренажёр для запоминания 214 иероглифических ключей (ключей Канси).
Программа показывает четыре случайных ключа и вопрос вида «Где ключ N75 mù (му) со значением дерево (tree)?», ниже — описание ключа.
- щелчок по верной картинке — проигрывается видео по этому ключу;
- щелчок по неверной — звуковой сигнал и подсказка, какой ключ выбран;
- двойной щелчок по вопросу — следующий вопрос (после верного ответа).
Окно открывается в правом нижнем углу экрана и сворачивается в трей.
- Windows;
- включённый компонент «Windows Media Player»: «Программы и компоненты» → «Включение или отключение компонентов Windows» → «Компоненты для работы с мультимедиа». Без него видеоплееры в окне не создаются.
- Visual Studio 2022 (toolset v143), C++20, MFC (статическая компоновка);
- Boost с собранной библиотекой Boost.Log. Путь к Boost задаётся переменной окружения
BOOST_ROOT; библиотеки ожидаются в%BOOST_ROOT%\lib64-msvc-14.3(x64) и%BOOST_ROOT%\lib32-msvc-14.3(Win32).
Для сборки необходимо открыть chitai_na.sln или выполнить:
msbuild chitai_na.sln /p:Configuration=Release /p:Platform=x64
Изображения ключей встраиваются в exe. Видео (mp4\) должны лежать рядом с chitai_na.exe; логи пишутся в logs\ там же.
Проект tests\chitai_na_tests собирается вместе с решением. Тесты проверяют выбор вопросов, поиск ресурсов по имени, наличие строк и картинок всех 214 ключей в собранном exe, версию exe и наличие видео:
x64\Release\chitai_na_tests.exe --exe x64\Release\chitai_na.exe --mp4 mp4
Без --exe и --mp4 проверки exe и видео пропускаются.
GitHub Actions (.github/workflows/ci.yml) при каждом push в trunk и в pull request собирает Release x64, запускает тесты и сохраняет zip-пакет (exe, mp4\, LICENSE, README) в артефактах сборки.
Для выпуска релиза необходимо поднять версию в Version.h, влить изменения в trunk и отправить тег вида v2.1:
git tag v2.1
git push origin v2.1
CI проверит, что тег совпадает с версией в Version.h, и опубликует релиз с zip-пакетом на странице Releases.
GNU GPL v3, полный текст — в файле LICENSE.
