I am trying to write a add-in for Visual Studio that, among other things, needs to keep track of every file in a Visual Studio solution. I know what events I need to subscribe to (when a Solution is opened, when a file is added/removed/edited in it, the same for projects, etc), but I don't understand how to actually get a list of files from any of it.
I recently installed CodeRush and have been playing with the DXCore framework. I'm very happy with it's approach at plugins, but I still don't see an obvious way to get a list of files in the solution.
So to sum it up: How, via the Visual Studio SDK or DXCore, do I get a reliable list of files in the solution and it's projects?
This is all available easily using DTE in the Visual Studio SDK.
You can get a list of projects in a solution using the Projects interface.
You can get a list of items in a project using the ProjectItem interface.
For more information, I'd recommend reading up on Controlling Projects and Solutions.