Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Tool to view the contents of the Solution User Options file (.suo)

Are there any free tools available to view the contents of the solution user options file (the .suo file that accompanies solution files)?

I know it's basically formatted as a file system within the file, but I'd like to be able to view the contents so that I can figure out which aspects of my solution and customizations are causing it grow very large over time.

like image 673
Joseph Daigle Avatar asked Sep 10 '08 13:09

Joseph Daigle


People also ask

What is the .SUO file?

suo) file is a structured storage, or compound, file stored in a binary format. You save user information into streams with the name of the stream being the key that will be used to identify the information in the . suo file.

Where is the .SUO file?

Quick Answer: It has a hidden file attribute applied. Changing the folder options to 'Show Hidden Files and Folder' revealed the SUO file adjacent to the solution file . When you open a Visual Studio Solution file, i.e. MySolution. sln, a corresponding MySolution.

What is the solution file in Visual Studio?

A solution is a structure for organizing projects in Visual Studio. The solution maintains the state information for projects in two files: . sln file (text-based, shared) .


2 Answers

A bit late for the original poster, but maybe useful to others.

Two freeware viewers for structured storage files (including .suo-files):

https://github.com/ironfede/openmcdf (old URL: http://sourceforge.net/projects/openmcdf/)

http://www.mitec.cz/ssv.html (free for non-commercial use)

When you open a .suo file in one of these viewers, you will see streams related to:

  • Bookmarks
  • Debugger watches
  • Unloaded projects
  • Outlining
  • Task-list user tasks
  • Debugger exceptions
  • Debugger Breakpoints
  • Debugger find source data
  • Open document windows

And much more...

like image 51
frank koch Avatar answered Oct 05 '22 15:10

frank koch


The .SUO file is effectively disposable. If it's getting too large, just delete it. Visual Studio will create a fresh one.

If you do want to go poking around in it, it looks like an OLE Compound Document File. You should be able to use the StgOpenStorage function to get hold of an IStorage pointer.

like image 21
Roger Lipscombe Avatar answered Oct 05 '22 15:10

Roger Lipscombe