Cannot run VSPackage when developing on multiple m

2019-03-11 03:12发布

问题:

we are working on a VSPackage in a team, using Visual Studio 2012 and TFS.

The extension works fine on the computer used to create it (through a wizard). On another computer, Visual Studio says that "a project with output type of class library cannot be started directly" when we attempt to run it (with F5).

The output of the project is indeed class library, and pressing F5 on the first machine starts Experimental Instance of Visual Studio with the extension loaded and working.

By looking at "%LOCALAPPDATA%\Microsoft\VisualStudio\11.0Exp\Extensions" on the second computer, we see that the extension had been built and there was an attempt of registering it with VS. We have also created another extension on the second computer and tried to run it on the first machine. It displays the same error.

How can we get the extension to run on computers which were not used to create it?

回答1:

The Visual Studio package project type adds an additional tab to the project properties view named VISX. On that tab the Deploy VSIX content to experimental instance for debugging option is checked by default; that´s the reason why package files are copied to the extensions directory of the current user´s profile after build.

If you want to start Visual Studio using the experimental hive you must customize the Debug settings of the class library project. Set the Start Action to Start external program and select the devenv.exe file (the file´s location depends on your installation folder) and specify the following commandline arguments:

/rootSuffix Exp

This allows to debug the extension by pressing F5.