Size: a a a

var chat = new Chat();

2021 March 21

AM

Artur Mustafin in var chat = new Chat();
Віктор Крохмаль
Ну ты знаешь про dmSpy ? ILSpy ?
ilspy это вообще то не то, что ты думаешь. и он дает IL код
источник

ВК

Віктор Крохмаль... in var chat = new Chat();
Artur Mustafin
ilspy это вообще то не то, что ты думаешь. и он дает IL код
да, я знаю
источник

ВК

Віктор Крохмаль... in var chat = new Chat();
и не только ил
источник

ВК

Віктор Крохмаль... in var chat = new Chat();
он показывает и исходный
источник

AM

Artur Mustafin in var chat = new Chat();
Віктор Крохмаль
просто там не лямбды, а делегаты и тд
нет, если ты хоть раз занимался обфускацией, как я, то должен понимать, что реверс инжиниринг не дает тебе некакого понимания об исходном коде
источник

ВК

Віктор Крохмаль... in var chat = new Chat();
Artur Mustafin
нет, если ты хоть раз занимался обфускацией, как я, то должен понимать, что реверс инжиниринг не дает тебе некакого понимания об исходном коде
нет, я слишком неопытен для такого 🤷‍♂️
источник

AM

Artur Mustafin in var chat = new Chat();
Віктор Крохмаль
он показывает и исходный
это только если у тебя рядом с .dll в папке лежит .pdb файл, с ссылками на исходный код.
источник

ВК

Віктор Крохмаль... in var chat = new Chat();
Artur Mustafin
это только если у тебя рядом с .dll в папке лежит .pdb файл, с ссылками на исходный код.
Думаю, скорее всего - ты прав, но утверждения что вс лучше просто потому, что она дороже - меня, как человека, который регулярно делает что-то просто потому что в вс этого нету немого обижает ...
источник

AM

Artur Mustafin in var chat = new Chat();
Віктор Крохмаль
нет, я слишком неопытен для такого 🤷‍♂️
вся информация, о твоем исходном коде в .pdb файле, на самом деле, так что если не будет его, твой декломпилятор получит шиш с маслом, а не исходный код, будут голые IL инструкции, и всё
источник

AM

Artur Mustafin in var chat = new Chat();
Віктор Крохмаль
Думаю, скорее всего - ты прав, но утверждения что вс лучше просто потому, что она дороже - меня, как человека, который регулярно делает что-то просто потому что в вс этого нету немого обижает ...
я не говорю, что лучше, я говорю, что можно нативно, если нет VS2019, тогда можно в JetBrains, но если него нет, то можно и в WinDbg, и в gdb, и в профайлере windows посмотреть, как и что выполняется, есть ещё метрики в .net, снимай их стандартным профайлером windows, если что, все должно получиться
источник

AM

Artur Mustafin in var chat = new Chat();
источник

AM

Artur Mustafin in var chat = new Chat();
источник

ВК

Віктор Крохмаль... in var chat = new Chat();
Спасибо 😅
источник

А

Алекс in var chat = new Chat();
Artur Mustafin
нет, если ты хоть раз занимался обфускацией, как я, то должен понимать, что реверс инжиниринг не дает тебе некакого понимания об исходном коде
по внешнему виду не совпадает, по логике полностью
плохо занимался видимо, декомпилировать и даже тупо пересобрать можно что угодно, без вариантов просто, вопрос желания
источник
2021 March 22

AM

Artur Mustafin in var chat = new Chat();
многие конструкции в коде являются не просто синтаксическим сахаром, но инициализацией скрытых от пользователя классов, например итераторов, генераторов, иногда дженериков, иногда нет. так вот, обычно, получается, что у тебя код IL обратно не собирается в понятный C# код, даже если делать это руками, потому что иногда это просто связано с тем, что когда к тебе привозят самосвал пронумерованных кирпичей, даже опытный строитель не всегда может собрать изначальную конструкцию. иногда, случаются, там зеркальные постройки, аналогичные по функционалу, но вот поднять точно такое же сооружение не представляется возможным. другое дело, если у тебя есть план всех этажей с полной строительной документацией (.pdb или собранная в режиме Debug, сборка, чем она отличается - в Debug обычно нет оптимизаций, treeшейкинга кода, удаления ненужных классов, ссылок и оптимизации времени исполнения, JIT-оптимизации), и вот ты такой довольный, "я смог воспользоваться реверс инжинирингом!", теперь включай Release сборку, оптимизацию кода, нативную компиляцию в таргет linux x64, удаляй .pdb, и вот, ты уже не такой кароль мира, как казался
источник

VL

Vova Lantsov in var chat = new Chat();
Віктор Крохмаль
Вс может дебажить dll ?
dotPeek бесплатный ставишь, к нему плагин, и на изи
источник

AM

Artur Mustafin in var chat = new Chat();
Vova Lantsov
dotPeek бесплатный ставишь, к нему плагин, и на изи
+ да в прошлом вообще был еще один, но скурвился в коммерцию
источник

AM

Artur Mustafin in var chat = new Chat();
.net reflector
источник

AM

Artur Mustafin in var chat = new Chat();
источник

VL

Vova Lantsov in var chat = new Chat();
Ну вообще dot апки делают всё что не может в какой-то мере IDE)
источник