Настройка:
ildasm projectName.exe /out:test.txt
выполняется на .exe с обеих машин. Вопрос:
Я потратил некоторое время на создание приложения для получения CRC исполняемого файла .NET и мне удалось игнорировать все различные данные времени сборки.
Я удаляю все данные выше // =============== ДЕКЛАРАЦИЯ ЧЛЕНОВ КЛАССА ================= ==
в выводе ildasm.exe. Это игнорирует MVID. Я создаю .exe без отладочной информации. И, наконец, я анализирую вывод для
и игнорирую их.
Затем я проверяю CRC оставшегося текстового файла.
CRC одинаковы, когда один и тот же проект создается на одном компьютере, но различаются, когда один и тот же проект построен на другом компьютере с идентичным исходным кодом и настройками MSVS 2010.
Кто-нибудь знает о какой-либо машинно-зависимой информации, хранящейся в сборке исполняемого файла .NET?
Ниже приведен пример различий. Похоже, что каждому объекту и классу присваиваются разные идентификаторы,но мне кажется странным, что это будет отличаться только тогда, когда код будет построен на разных машинах ...
`class DSC_PI.MainWindow/'<>c__DisplayClass21' V_2,`
`class DSC_PI.MainWindow/'<>c__DisplayClass10' V_2,`
`class DSC_PI.MainWindow/'<>c__DisplayClass1e' V_3,`
`class DSC_PI.MainWindow/'<>c__DisplayClassd' V_3,`
Любое понимание было бы очень признательно.