How to use CCI AST to compare dlls

Nov 22, 2011 at 2:19 PM

Hi,

I want to get the difference information between current version and previous version for one project. I plan to use CCI AST to compare the dll file each other, but I don't know how to start up.  Anyone can give me some hints or show me an example?  Appreciated.

 

Coordinator
Nov 22, 2011 at 6:18 PM

The first thing you should do is to get a clear idea of the kind of differences you are looking for. Depending on your ambition, things can get quite tricky.

Next, you need to think about what exactly you mean by "project". Also, you need to think about whether the AST Model is the right one for you. (How is it to be constructed?) Alternatively, there is also the Code Model, the Metadata Model and even the Source Model to consider.

See also http://research.microsoft.com/en-us/um/people/shuvendu/public/symdiff-internal-tr-june10.pdf

Nov 23, 2011 at 3:04 AM

Thanks a lot, Herman, and sorry for ambiguous.  I worked on a regression testing project for c# program currently and want to get the syntactic difference between two assemblies. I referred to an example(Autopex, http://autopex.codeplex.com/) and tried to use metadata model to get the difference.  It is easy to do that if the difference is based on the OperationCode change, but for the operand change, it is very complicated to handle it. I think that is mainly  because the operand comparision depends on different kinds of OperationCode. Therefore, I plan to turn to AST model(I formerly did some work on comparing the AST model for Java programs).  Any comments?