Пару вопросов:
1. Релизите ли вы .pdb файлы конечному клиенту?
2. Будут ли работать .pdb файлы с обфусцированными сборками (мне кажется нет)?
3. Как вы вообще исправляете ошибки, полученные из обфусцированного кода?
4. Делаете ли установщики, если да, то чем? InstallShield, WiX, InnoSetup, ClickOnce. Или просто зипуете?
Не будут работать.
A>3. Как вы вообще исправляете ошибки, полученные из обфусцированного кода?
С помощью obfuscation map, нужно их хранить после каждой обфускации. Я автоматизировал это дело после пару лет мучений.
A>4. Делаете ли установщики, если да, то чем? InstallShield, WiX, InnoSetup, ClickOnce. Или просто зипуете?
InnoSetup, может многое, но для особых случаев имеет встроенный Паскаль или можно запустить свою утилиту до или после установки.
Здравствуйте, yduz, Вы писали: A>>3. Как вы вообще исправляете ошибки, полученные из обфусцированного кода?
Y>С помощью obfuscation map, нужно их хранить после каждой обфускации. Я автоматизировал это дело после пару лет мучений.
А подробнее об автоматизации?
obfuscation map генерируется всеми обфускаторами?
Нужен ли для map .pdb?
Я так понимаю, суть в том, что там будет таблица маппинга оригинального названия метода, пременной и т.п. на обфусцированную?
Получается, что .pdb впринципе не нужны, так как после обфускации их использовать не получится? Их бывают применяют для исследования дампов.
Написал програмку которая копирует эти мапы в папку, и нумерует в зависимости от версии проги-продукта.
A>obfuscation map генерируется всеми обфускаторами?
Почти всеми.
A>Нужен ли для map .pdb?
Нет.
A>Я так понимаю, суть в том, что там будет таблица маппинга оригинального названия метода, пременной и т.п. на обфусцированную?
Да, и обычно есть даже встроенный тул в обфускаторе для де-обфускации strack trace-а. Очень удобно для понимания исключений которые приходят с баг-репортами. У меня приходит что-то типо этого:
Exception: System.IO.FileNotFoundException: Failed to resolve the assessment File.
at al.a()
at sa.a()
at sa..ctor()
at vm.a(vn a)
at vh.b()
А map помогает востановить все это в нормальные имена классов и методов.
A>Получается, что .pdb впринципе не нужны, так как после обфускации их использовать не получится? Их бывают применяют для исследования дампов.
PDB хранит разного рода инфо о сурс коде, но раз делаешь обфускацию то PDB тем-более не нужно показывать.
A>1. Релизите ли вы .pdb файлы конечному клиенту?
Нет.
A>2. Будут ли работать .pdb файлы с обфусцированными сборками (мне кажется нет)?
Некоторые обфускаторы умеют делать PDB для "запутанной" сборки.
Например Dotfuscator Prof. edition.