Я снова пытаюсь сравнить два .exe, на этот раз с некоторыми изменениями.
- Сборка проекта в Microsoft Visual Studio 2010
- Целевая платформа проекта = клиентский профиль .NET Framework 3.5
Я создаю проект, запускаю dumpbin /rawdata
на .exe и выводю в текстовый файл. Затем я заново собираю проект, запускаю dumpbin /rawdata
на новом .exe и выводю в новый текстовый файл. Затем я проверяю каждую из них, чтобы убедиться, что они одинаковы (между сборками не вносятся изменения).
Я получаю разные значения CRC. Когда я пропускаю необработанные данные через windiff
, я вижу различия в разделе Raw Data #1
, который, как мне кажется, является фактическими данными, сгенерированными из исходного кода проекта (исправьте, если я ошибаюсь).
В Raw Data #1
есть 3 различия, одна из которых включает .pdb.
Вопросы:
- Кто-нибудь знает, где я могу отключить отладочную информацию в VS 2010 (аналогично
Project Property Pages -> Config Properties -> Linker -> Debugging -> Generate Debug Info
в VS 2005) - Есть ли какие-нибудь уловки, чтобы выяснить, где на самом деле существуют выделенные различия в WINDIFF в исходном коде?
Спасибо, ZayJay
PS - не стесняйтесь спрашивать разъяснений, и еще раз спасибо. Я искал какое-то время без особого успеха. Я так рад, что нашел этот ресурс.
ИЗМЕНИТЬ / ОБНОВИТЬ. Теперь я перешел к компиляции кода с помощью ngen, чтобы обойти MSIL и все, что там обнаруживалось как различия. Одно из различий было в этой области: _7 _... и я ничего не могу сделать из ascii в другом различии (я избавился от информации .pdb).
Я хотел бы знать, есть ли способ просмотреть / извлечь скомпилированный код для просмотра.
Я пробовал ngen display "App Name"
и искал в WINDOWS/assembly
, но не нашел ничего подходящего (к тому же я не знаю на 100%, что ищу ...)
Спасибо за уделенное время, ZayJay
dumpbin
или запустить на нем наш генератор CRC; Я никогда не использовал его, но читаю об этом и буду обновлять любые выводы (хотя сейчас кажется, что ngen.exe устанавливает скомпилированный .exe в кеш, чтобы не было JIT-компиляции ... я что-то упустил) - person ZayJay   schedule 16.05.2011