65.9K
CodeProject is changing. Read more.
Home

Binary Code Compatibility

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0 vote)

Jun 25, 2012

CPOL
viewsIcon

9272

downloadIcon

1

This article explains how you can identify any compatability issues for a legacy code written in VB, or any other language that produces TLB (Type Library) files for its interfaces.

Introduction

This code allows users to compare two files using MD5.

Background

Over the past week, I was trying to find a way to identify whether the binary compatibility of a COM binary has changed or not without referring back to the developer and asking him, since this process will be done by the release team.

And after some thorough investigation, it came to me! These COMs binaries produce Type Libraries (TLB), and the TLB describes the interfaces of the COM. So any change on the publish methods of the binary classes will change the TLB file for sure.

Based on this conclusion, I built a simple desktop application that compares any two files by getting the MD5 of each file, and if the MD5 is identical then the files are identical, otherwise they are not. And I used this file comparer to identify compatibility changes better binaries.

Using the code

To use the code, select the location of the old file to compare, select the location of the second file to compare, and click Compare, and you will get the compare result.