I need a VB parser to analyze some VB programs. Searching on Google, I found two VB parsers. The first one was writen by Paul Vick who I believe is a Microsoft employee. It was written in VB.Net and will parser VB.Net 2005 and VB.Net 2003 files. The second one was written by Paul Cager. It was created using JavaCC (Java compiler compiler) and the parser is natually in Java. The parser will parse VB6. However, since the parser is generated from syntax defined in JJT file, it is possible to update the file to generate the parser for VB.NET.
Both parsers would generate abstract syntax tree. From there, we can walk the three to analyze the program.