Здравствуйте, BlackTiger, Вы писали:
BT>Имя вот только советую изменить сразу же...
BT>Делали одни свой Phoenix однажды — сначала переименовали в Firebird, а потом пришлось в Firefox.
"... Как вы яхту назовете, так она и поплывет ..." ??? ИМХО не в названии дело.
BT>Очередной велосипед изобретаем?
А то
Здравствуйте, Бабокин Дмитрий, Вы писали:
БД>Ну хоть что-то путное и общественнополезное затеяли
БД>Про декомпиляцию у меня вопросик. Какая цель? Получать компилируемые исходники или некомпилируемый шарпообразный код?
Цель? Цель, видимо, самая благая! Взять коммерческую сборку, раскрутить ее, и включать в свой проект под своим namespace'ом в своих dll-ках. Чтоб ниодин буржуй не докопался, что его компоненты украли.
Вот DevExpress, например, свои компоненты через обфускаторы не прогоняет... (Интересно почему?)
Real programmers don't comment their code.
If it was hard to write, it should be hard to understand.
BT>Цель? Цель, видимо, самая благая! Взять коммерческую сборку, раскрутить ее, и включать в свой проект под своим namespace'ом в своих dll-ках. Чтоб ниодин буржуй не докопался, что его компоненты украли.
Эк вас растянуло
Декомпилятор, как и реврес инжениринг, вещь двойного назначения...
В основном задумывался для исследовательских целей.
BT>Вот DevExpress, например, свои компоненты через обфускаторы не прогоняет... (Интересно почему?)
У авторов спрашивать не пытались?
Здравствуйте, Flamer, Вы писали:
F>Здравствуйте, Аноним, Вы писали:
F>[]
F>Для тех, кто в танке, в смысле, только начал изучать до-диез — найдется что сделать? Хочется совместить приятное с полезным
Вообще если стоит цель изучить .net, то, по моему, написание декомпилятора — не лучшая задача. Т.е. на ней можно узнать как устроены сборки, что такое MSIL и подобную "низкоуровневую" информацию, но применение этих знаний довольно ограниченно. Поэтому мне кажется, лучше уделить время изучению различных технологий, входящих в .net (ado.net, remoting, web services, asp.net и т.п. лабудень ). Декомпилятор — это для тех, кому очень интересно
Уфф. Сегодня закончилась сессия , так что есть свободное время. И я хотел бы что-нибудь поделать для проекта.
На данный момент потихоньку разбираюсь с исходниками.
Здравствуйте, SergeaS, Вы писали:
SS>Проект мертв?
Почему сразу мертв, может, он еще только рождается...
Правило наименьшего удивления: Программа должна работать так, чтобы это вызывало наименьшее удивление у пользователя.
Построй свой мини-горд на http://rumactep.myminicity.com/
Здравствуйте, SergeaS, Вы писали:
SS>Здравствуйте, migel, Вы писали:
M>>чего ?
SS>Хотелось бы узнать какие функции реализованы полностью, что требуется доделать SS>и что планируется реализовать в ближайшем будущем ?
Ок. В связи с недостатком времени развернутая декларация будет позже
1. Ни одной полностью реализованной функции нет
ILReader нет:
а) поддержки Generics
б) Атрибуты — в зачаточном состоянии
Все остальное зависит от ILReader поэтому в разобранном состоянии
Decompiler — есть:
а) CodeDOM model
б) Основной механизм постороения DOM модели по IL коду с последующей оптимизацией дерева.
нет:
а) поддержки Generics
Фоматтеры
для C# вообще нет
для MSIL самые зачатки.
Что хотелось бы получить
1. Интерактивную среду декомпиляции — всем известно что автоматическая декомпиляция не всегда приводит к хоршим результатам. Поэтому нужно предусмотреть механизм управляемой вручную оптимизации DOM дерева.
2. Поддержку Generics (куда ж без нее )
3. Поддержку дополнительных модулей — оптимизаторов DOM дерева (скриптов?)
4. Проект ориентированный GUI.
Здравствуйте, migel, Вы писали:
M>Здравствуйте, SergeaS, Вы писали:
M>ILReader нет: M>а) поддержки Generics M>б) Атрибуты — в зачаточном состоянии
Хотел уже написать, что ILReader от автора рефлектора никуда не годится, но решил скачать последнюю версию и проверить. Уже значительно лучше, но всё равно то, что используется Reflection — большой минус. Рефлекшн в декомпиляции не помошник. Поэтому и Generics нет, и атрибутов, и думаю столкнетесь с ExecutionEngineException при попытке полазить по некоторым сборкам через reflection.
Здравствуйте, Mace Windu, Вы писали:
MW>Хотел уже написать, что ILReader от автора рефлектора никуда не годится.
Вообще то здесь под ILReader имелся ввиду, тот, который в проекте лежит. А Вы какой имеете в виду
MW>, но решил скачать последнюю версию и проверить. Уже значительно лучше, но всё равно то, что используется Reflection — большой минус.
Какой reflection ???
у нас все ручками через таблицы выдергивается. MW>Рефлекшн в декомпиляции не помошник.
Это точно MW>Поэтому и Generics нет, и атрибутов.
Вовсе не из-за этого.... MW> и думаю столкнетесь с ExecutionEngineException при попытке полазить по некоторым сборкам через reflection.
Думаете, или пробывали запускать????
Здравствуйте, migel, Вы писали:
M>Здравствуйте, Mace Windu, Вы писали:
MW>>Хотел уже написать, что ILReader от автора рефлектора никуда не годится. M>Вообще то здесь под ILReader имелся ввиду, тот, который в проекте лежит. А Вы какой имеете в виду
Пнятно, слишком уж названия похожи (Просто к проекту доступа не имею — надо админов трясти чтоб такой экзотический порт окрыли). Тогда вопросов больше не имею
MW>> и думаю столкнетесь с ExecutionEngineException при попытке полазить по некоторым сборкам через reflection. M>Думаете, или пробывали запускать????
Есть такая бага в Reflection. Сталкивался.
Здравствуйте, Mace Windu, Вы писали:
MW>Пнятно, слишком уж названия похожи
Фантазии не хватило а переимновать всегда можно.
M>>Думаете, или пробывали запускать???? MW>Есть такая бага в Reflection. Сталкивался.
На заре копания с рефлекшнём тож сталкивался Он, собака, иногда типы пропускал в мелкософтовых сборках.
Мда, загрузил я проект, хотел что-нибудь сделать, посмотрел...
сколько же там всего!
в общем, не для моего начинающего уровня проектик
Правило наименьшего удивления: Программа должна работать так, чтобы это вызывало наименьшее удивление у пользователя.
Построй свой мини-горд на http://rumactep.myminicity.com/
Здравствуйте, MACTEP, Вы писали:
MAC>Мда, загрузил я проект, хотел что-нибудь сделать, посмотрел... MAC>сколько же там всего! MAC>в общем, не для моего начинающего уровня проектик