C#コードが変更されていない場合、生成されるILはビルドごとに同じになると思います。問題は、同じコードから生成された2つのEXEファイルが同じハッシュを持たないことです。
コードスタイルを変更すると、別のILが生成されるかどうかを確認したいと思います。どうすればそれを達成できますか?
C#コードが変更されていない場合、生成されるILはビルドごとに同じになると思います。問題は、同じコードから生成された2つのEXEファイルが同じハッシュを持たないことです。
コードスタイルを変更すると、別のILが生成されるかどうかを確認したいと思います。どうすればそれを達成できますか?
あなたは悪い仮定をしている。コードを変更せずに再構築すると、異なるバイナリが配信されます。
見る:
https://stackoverflow.com/a/8927785/426894
コンパイラを実行するたびに、異なる出力が得られるはずです。
と
同じC#プログラムを2回コンパイルすると、同じバイナリ出力が生成されることが保証されていますか?
いいえ。
これは、オープンソースの.NETアセンブリブラウザおよび逆コンパイラであるILSpyを使用して実行できます。
EXEを分解し、その内容を比較するために使用できるツールがいくつかあります。このブログを見てくださいhttp://immitev.blogspot.com.br/2008/10/ways-to-compare-net-assemblies.html
[]の