![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| V0fka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
Привет!
Есть 2 среды разработки: Visual Studio 2012 и Sharp Developer. Так вот, если в Визуал Студио перейти к определению типов Net, то открывается окно, где видно сигнатуру типа. А если из Шарп Девелопера перейти к определению типа, то там видно не только сигнатуру, а и исходный код. То что из Шарп Девелопера видно исходники, я обнаружил сегодня случайно. В связи с этим вопрос: из Визуал Студио можно исходники смотреть? |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
Можно сделать исходники доступными для отладчика, но там не все библиотеки доступны. А вообще можно воспользоваться ILSpy. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| V0fka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
||||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
Илдазм - дизассемблер, а илспай - декомпилятор. Декомпилятор предоставляет код на шарпе, а илдазм на CIL. Там в настройках где-то галочку поставить надо, я не помню точно, поскольку исходники доступны только для шарпа, а я на нем пишу редко. Но если не найдешь, могу посмотреть, а может еще кто даст подробную инструкцию. Но илспай - то что надо, он, кстати для этих целей использует те же либы, что и шарпдевелоп. И вообще этот проект и создавался в рамках проекта шарпдевелоп, так что получишь ровно то же самое, что ты видел там. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| gambit |
|
|||
![]() Эксперт ![]() ![]() ![]() Награды: 1 Профиль Группа: Комодератор Сообщений: 1359 Регистрация: 25.6.2006 Где: я? Репутация: 3 Всего: 40 |
Я юзаю dotPeek, он хоть и отдельно от студии, но очень удобен.
Из платного - решарпер, он в студию интегрируется и исходники может показать в ней, но это не основная его фишка, а так приятный бонус. Ну и гвоздь программы .NET Reflector, который после того, как внезапно стал платным, был позабыт, но его отличало, что он из il мог во многое сконвертить, в том числе и vb.net |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
ILSpy появился на свет как раз в ответ на то, что рефлектор стал платным. Его разработчики с самого начала заявляли, что функционал будет доведён до уровня рефлектора. У него похожий интерфейс, да и на сегодняшний день он не хуже рефлектора, по крайней мере последней версии, которую я видел. К заметным недостаткам по сравнению с рефлектором можно отнести пожалуй только отсутствие такого количества плагинов. На вбнет он тоже код отображает, у рефлектора, кстати, с этим были некоторые проблемы и он порой выдавал синтаксически некорректный код. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| gambit |
|
|||
![]() Эксперт ![]() ![]() ![]() Награды: 1 Профиль Группа: Комодератор Сообщений: 1359 Регистрация: 25.6.2006 Где: я? Репутация: 3 Всего: 40 |
||||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
Отображает как хамл, ресурсы сохраняет в файл. Так на рефлекторе из плагинов я ставил сохранялку кода, можно было сохранить код класса в файл или всю либу в проект студии, но здесь это встроенная функция. Так в принципе, познакомившись с илспаем, я развитием рефлектора вообще перестал интересоваться, может там сейчас и есть какие-то преимущества, но мне илспая хватает вполне. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| V0fka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
Нашел в настройках галку "Разрешить шаги в исходном коде .Net Framework". Поставил, студия попросила установить (или указать, не помню дословно) какие-то символы. Я перешел на соответствующую вкладку и нажал "ОК". Студия начала что-то грузить. Попробовал после этого Ф12 на методе Serialize типа XmlSerializer. В итоге ничего не поменялось и вижу только сигнатуру. Попробовал перезапустить студию. Результат не изменился. Попробовал в настройках Символов поставить галку в группе настроек "Места размещения символов \ Серверы символов Microsoft". Перезапустил студию, результат не изменился. Пробовал не по Ф12, а в режиме отладки Ф11 - но тоже эффекта ожидаемого не достиг. :( Спасибо за прогу! Посмотрел, на первый взгляд прикольно, буду пользоваться Тоже посмотрю, спасибо! Но, как писал выше, было бы вообще супер, если б можно было из студии смотреть с помощью стандартных возможностей либо каких-то бесплатных инструментов. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
V0fka, все эти твои ф12 мне ни о чём не говорят, скорей всего у меня студия по другому настроена, так что пиши какую функцию запустил, а не шорткат, которым ты её вызвал. Исходники доступны в режиме пошаговой отладки, просто отладчик будет проходиться по ним также как по твоему коду, а из браузера объектов доступа нет. Кроме того можно просмотреть код, вызвав функцию "Перейти к определению" из контекстного меню.
В студию илспай не интегрируется, но я просто добавил её в меню "сервис" как внешний инструмент, откуда он прекрасно запускается. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| V0fka |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
diadiavova, ф12 - у меня это "Перейти к определению". ф11 - это "Шаг с заходом". Т.е. в студии жму "Перейти к определению", получаю примерно такое:
Т.е. вижу только сигнатуру. Когда жму в отладке "Шаг с заходом" в строке с вызовом метода Serialize типа XmlSerializer, то перехожу на следующую строку и никуда в другое место отладчик не идет.
Ну и оттуда просто открываешь его и руками выбираешь какой класс смотреть? Или можно сделать, чтобы оно само подхватывало как-то из текущей строки? Или я много хочу? |
||||
|
|||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 18 Всего: 142 |
Попробуй другой класс в другой библиотеке, но вообще, как я уже сказал, я этим чудом не пользуюсь, так что подробно описать не могу. Видимо да. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| V0fka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
В общем я понял, буду вырабатывать привычку смотреть это не в визуал студио.
diadiavova, gambit, спасибо за ответы! |
|||
|
||||
| V0fka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
Посмотрел dotPeek. Для меня, как для неискушенного пользователя, подходят и ILSpy и dotPeek
diadiavova, gambit, ещё раз спасибо за ответы! |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | .NET для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |