Compare compiled .NET assemblies?

前端 未结 6 1788
我在风中等你
我在风中等你 2020-12-01 00:29

Are there any good programs out there to compare to compile .NET assemblies?

For example I have HelloWorld.dll (1.0.0.0) and HelloWorld.dll (2.0.0.0), and I want t

6条回答
  •  孤街浪徒
    2020-12-01 01:13

    Ways to Compare .NET Assemblies suggests

    Commercial:

    • NDepend

    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 ToolsOptions
    • 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 into ilasm 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.

提交回复
热议问题