Ways to Compare .NET Assemblies suggests
Commercial:
Free:
- JustAssembly (only shows differences in API)
- BitDiffer (same)
- Reflector Diff Add-in (which you’ve already discovered, but not available anymore)
Existing compare tools like Beyond Compare (commercial) can do this by special configuration. Here’s how to do this for Beyond Compare:
- Go to Tools → Options
- Click New.., select “Text format”, click OK
- Give it a name (say, EXE, or DLL), and specify the mask as
*.exe
or*.dll
- Click on tab Conversion and select “External program (Unicode filenames)”
- Under “Loading”, specify the path to
ildasm
and add%s /OUT:%t /NOBAR
(i.e.:C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\ildasm.exe %s /OUT:%t /NOBAR
) - Make sure to check disable editing.
- Click Save, then Close
- Restart BC and open two
exe
files to compare, it should decompile intoilasm
automatically now.
You can also add syntax highlighting to this new format. I plan to send the syntax file to them so that it’ll become available to share.