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

Ваш аккаунт

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

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

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

Проект Metadata Explorer

273
22 октября 2006 года
3A3-968M
1.2K / / 22.12.2005
Цель данного проекта: создание простой и функциональной утилиты для просмотра метаданных .NET сборок.
Подобные приложения: Reflector, Phoenix, ILDASM.
Краткое описание:
Приложение Metadata Explorer позволяет просматривать метаданные сборок .NET версий 1.x - 2.x: классы, поля, методы, MSIL код и т.д.. Так же есть возможность просмотра PDB отладочных файлов, физическое расположение метаданных благодаря доступу к просмотру PE и CLR заголовков файла, таблица импорта, расширенный поиск по метаданным. Главное отличие от других подобных проектов - открытая архитектура. Код 100% managed. Так же есть возможность удобного подключения плагинов при помощи Metadata Explorer Plugin API.
Требование к проекту:
1) Интерфейс выполняется на английском языке. Так что весь нэйминг переменных тоже должен быть на грамотном языке.
2) Язык: C# 2.0
3) Лицензия: GNU GPL v.3
Используемые технологии:
1) .NET Framework 2.0
2) Windows Forms 2.0
3) Reflection API
4) Fusion
273
22 октября 2006 года
3A3-968M
1.2K / / 22.12.2005
Пока учавствуют в проекте двое: я, т.е. 3A3-968M и ещё один человек, который занимается внедрением лицензии и инсталлятором.
На данный момент готово:
1) Графический интерфейс - вялый пока, но всё же несёт функционал;
2) Возможность просмотра зависимостей сборки, атрибутов, фактических и формальных параметров конструктора атрибута.

На данный момент доступна альфа версия [SIZE=2]2.0.23.1098 от 14.10.2006(здесь: http://www.barsu.ru/forum/topic.php?forum=4&topic=3). Подробности версии и её баги можно прочитать в файле readme.en.[/SIZE]
[SIZE=2]За проектом так же можно следить на www.barsu.ru в разделе программирование.[/SIZE]
[SIZE=2]К сожалению, пока нельзя загружать файлы большого объёма на этот сайт (я думаю эта проблема решаема), поэтому все желающие пишите мне в PM вышлю исходники и бинарники.
[/SIZE]
273
23 октября 2006 года
3A3-968M
1.2K / / 22.12.2005
Скоро появиться FTP, на котором можно будет скачать исходники.
273
25 октября 2006 года
3A3-968M
1.2K / / 22.12.2005
Скоро откроется FTP репозиторий, предназначенный для проектов: ftp://projects.codenet.ru.
Что касается Metadata Explorer Lite, то исправлены все изображения в TreeView, загрузка списка изображений убрана из события загрузки дочерней формы в родительскую, что позволило убрать тормознутость программы довольно существенно. Убраны фильтры вывода метаданных (соответственно файл Filters.cs тоже убран). Вместо этого введена система сортировки метаданных - по области видимости, по способу доступа типа и т.д.. Сделан класс Namespace для сбора типов одного пространства имён в одну логическую структуру. Типы выводятся в соответствующих пространствах имён.
273
31 октября 2006 года
3A3-968M
1.2K / / 22.12.2005
Переписан код форматирования метаданных. Тормозов стало ещё чуть меньше. Убрал несколько классов за ненадобностью. Утверждёны виды сортировок метаданных. Можно сортировать как вашей душе угодно. Сделаны выводы и сортировка полей, типов, пространств имён, вложенных типов. Работаю над методами.
273
15 ноября 2006 года
3A3-968M
1.2K / / 22.12.2005
В версии 2.0.24.56 (всё ещё альфа) сделано кэширование часто используемых сборок. Используется простой собственный формат файла MDC (Binary-сериализация + ZIP-сжатие) для этой цели. Это помогает каждый раз не грузить большие сборки заново. Так же введена система JIT-просмотра данных. В этом режиме парсятся только те классы, которые необходимы пользователю (естественно прозрачно). Этот режим просмотра включается, если сборка достаточно большая, т.к. в отключённом режиме приходится ждать 4 минуты для парсинга сборки mscorlib.dll (на Celeron 2200 MHz) что далеко не всех устраивает.
273
06 декабря 2006 года
3A3-968M
1.2K / / 22.12.2005
Наконец-то решён вопрос - где скачать? На проекте CodePlex (сайт Microsoft'а для opensource-проектов). Мой проект находится здесь:
www.codeplex.com/mde
Там уже выложен релиз альфа версии.
Надеюсь, кто-нибудь ещё присоединиться.
273
02 января 2007 года
3A3-968M
1.2K / / 22.12.2005
Альфа-версия 2.0.33.12a.
Есть уже дизассемблер в язык MSIL. Синтаксическая подсветка тоже присутствует.
Есть возможно смотреть заголовоки PE файла, в том числе и CLI заголовки, которые указывают на физическое расположение метаданных.
[SIZE=2][COLOR=#800000][COLOR=#000000]Почти доделана возможность просматривать содержимое файлов PDB - генерируемые MSVS2005 которые содержат отладочную информацию не доступную через Reflection - имена локальных переменных, ссылки на исходные коды и т.д..[/COLOR]
[/COLOR][/SIZE]
273
13 февраля 2007 года
3A3-968M
1.2K / / 22.12.2005
Дополнен MSIL-дизассемблер, но ещё не весь функционал реализован. Будет чуть позже.
Добавлен очень полезный плагин - GAC Explorer. Позволяет управлять Глобальным Кэшем сборок (Global Assembly Cache) прямо из Metadata Explorer. Появилась нормальный список импортируемых классов, если проще - то таблица импорта.
273
08 марта 2007 года
3A3-968M
1.2K / / 22.12.2005
Наконец-то долгожданная бета. Теперь можно открыто тестировать, обливать грязью или обсыпать цветами.
В этом релизе - ну практически полностью законченный дизассемблер (с типами-генериками осталосось разобраться), умеет уже выводить исходный код всей сборки (в меню Explorer->Plug-ins->MSIL Provider->Manfiest Disassembling включить, потом выделить корневой узел в закладке Assembly и нажать кнопку показа исходного кода).
Добавил отображения некоторых таблиц метаданных - TypeSpec, TypeRef, MemberRef и т.д..
Для желающих потестировать это дело - заполняем отчёты, выложенные в аттаче. Можно и на английском (там образцы тоже есть). Заполняем В СООТВЕТСТВИИ с форматом документа (заголовки, шрифты, отступы).
Скачать исходные коды и бинарники можно всё там же: www.codeplex.com/mde, т.к. здесь большие файлы выкладывать не получается.
713
09 марта 2007 года
Ap0k
360 / / 13.03.2006
Приветствую!
Как и обещал, тестирую, пока только внешние данные :-)
Для начала первые впечатления..
Первый запуск...
1) Splash-screen необходимо починить, и поточнее обозначить места для создания полигонов. сейчас белые кубики вокруг картинки. (см. аттач)
2) Получил исключение, не смог найти часть пути к мануалу Help\Custom\.
/хватило их создания, для работы/
3) Диалог выбора сборки из GAC, не плохо бы отобразить сборки в DataGridView. /нечитабельно/ + убрать из TaskBar.
Сорри, позже продолжу (( отрывают..

PS: начал разбираться с логикой. Понравилось ;)
PPS: буду обновлять это сообщение по мере тестов.
33K
20 октября 2007 года
K-GROUP
1 / / 20.10.2007
Можно подсобить с разработкой интерфейса
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог