My course project on system programming
Консольное приложение, способное анализировать PE-файлы и рекурсивно определять все зависимости от динамических библиотек, включая транзитивные зависимости.
PEscan.exe [-f <file.exe> | -d <directory>] [-formats json,txt,csv,dot] [-out <outputDirectory>] [--filtered]
-f, --file : Path to a single EXE file
-d, --directory : Directory containing EXE files (up to 10 files) (Файлы обрабатываюся ассинхронно)
Выходными данными являются отчеты, содержащие полный список всех динамических библиотек (прямых и транзитивных), сформированные в раз-личных представлениях: структурированный список (TXT, CSV), машиночи-таемый формат (JSON) и граф зависимостей (DOT) для последующей визуа-лизации.
Атрибут --filtered был добавлен всвязи с тем, что системные зависимости, такие как: KERNAL32.DLL, USER32.DLL, NTDLL.DLL и т.д. — имеют более 30 системных зависимостей, из-за чего читать диграмму становится не просто. Всвязи с этим я решил добавить атрибут, который не будет рекурсивно исследовать транзитивыне зависимости данных библиотек. (Атрибут является не обязательным)