You can use the
ApiChange utility (originally written by Alois Kraus) for comparing e.g. dll's:
GitHub - arlm/apichange: Fork of the codeplex API Change repository[
^]
We use it on our builder to detect breaking changes to the API:
"ApiChange.exe" -diff -new "API.dll" -old "APIold.dll" >> APIchanges.txt
FIND "- public" APIchanges.txt
IF ERRORLEVEL 1 EXIT /B 0
ECHO Errors: API or Interface is broken ! See APIchanges.txt >&2
Rem Use EXIT /B 0 for build to warn only.
Rem Use EXIT /B 1 for build to fail:
EXIT /B 1