MZ-Tools Articles Series: HOWTO: Get information about the loaded solution from a Visual Studio package.

Following with the second and third strategies migrating from Visual Studio add-ins to packages, after defining and implementing an IHost interface, likely you will continue with an ISolution interface with properties like:
public interface ISolution
{
   bool IsOpen { get;}
   string Name { get;}
   string FullFileName { get;}
   ...
}

Using the automation model (EnvDTE) you would use DTE.Solution to get the solution object and then the Solution.IsOpen, Solution.Name, Solution.FullName or Solution.Properties.Item(“Path”).Value properties and so on.

In this small article I explain how to use the IVsSolution interface of the SVsSolution service to avoid the use of EnvDTE.Solution to get some information about the loaded solution:

HOWTO: Get information about the loaded solution from a Visual Studio package.
http://www.mztools.com/articles/2014/MZ2014012.aspx