Projects that provide Visual Studio IDE support.

Debugging

Debugging VS packages can be a royal PITA. The hive can be used but install.bat often requires it to be reset each time.

Hive:

Cosmos.VS.Package is setup for debugging via a second (non hive) instance but the path is set for the default directory on x64.

Hive:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe
D:\source\Cosmos\source\Cosmos.sln /ranu /rootsuffix Exp

Non hive:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe
D:\source\Cosmos\source\Cosmos.sln

Resources

VSIX

MEF

Projects

Note that some VS parts, the custom VS debugger for example is in \Debug.

Cosmos.VS.Package

MPF project. Does not appear to be a VS Package. So what is it? This was our first package from very old VS, might be old crapp COM model?

Provides:

Cosmos.VS.Windows

Provides UI for Cosmos debug windows in VS. Contains windows, toolbars and menu options.

Separate from other pacakges because:

Cosmos.VS.Windows.Test

Testing project for Cosmos.VS.Windows. Not used by VS itself.

Cosmos.VS.Wizards

Not VSIX, not MEF, not MPF. Why is this a separate assembly?

Provides:

Cosmos.VS.XSharp

MPF project and VS Package.

XSharp Language Service

Provides:

X# custom tool generator is in Cosmos.VS.Package.

Comos.VS.HostProcess

VS debugger requires a process that starts paused, and is then later started. To do this and to unify the process that is used, we use a proxy process which then controls the actual execution environment (VMWare, QEMU, etc).

Comos.Debug.VSDebugEngine

This provides a custom debug engine to Visual Studio to handle tracing, breakpoints, stepping, watches, etc.

References