none
Visual Studio 2013 not loading extension when debugging in experiemental instance RRS feed

  • Question

  • For Visual Studio 2010 I created a super simple VSIX extension which implemented ITaggerProvider. When VS 2012 came out I updated the vsix manifest to include it as well, but with VS 2013, the vsix manifest changed to version 2, which allowed for no max version. To make use of this, in VS 2013 I created a new VSIX project (but in the original solution), set the manifest to have an install target of [12.0,], copied the original source code (there's only one small file), and compiled.

    I set my new project as the default launch project, but when debugging, no break points get hit. I check the Extensions and Updates menu item and my new extension is listed there, but it doesn't seem to be having any affect, and since the break points are even loading, I suspect that my visx file isn't getting loaded by the experimental instance.

    Did something change between VS 2012 and VS 2013 that would have broken loading an ITaggerProvider?

    Here's all of the code that I think is relevant (TextBufferTracker is my own class):

    [Export(typeof(ITaggerProvider))]
    [TagType(typeof(ITextMarkerTag))]
    [ContentType("code")]
    internal sealed class CodeTaggerProvider : ITaggerProvider
    {
    	public ITagger<T> CreateTagger<T>(ITextBuffer buffer) where T : ITag
    	{
    		Func<ITagger<T>> sc = delegate()
    		{
    			return new TextBufferTracker(buffer) as ITagger<T>;
    		};
    			return buffer.Properties.GetOrCreateSingletonProperty<ITagger<T>>(sc);
    	}
    }

    Friday, March 20, 2015 7:01 PM

All replies

  • Can you try diagnosing Mef failures?

    How to Debug and Diagnose MEF Failures
    http://blogs.msdn.com/b/dsplaisted/archive/2010/07/13/how-to-debug-and-diagnose-mef-failures.aspx

    Composition Analysis Tool (Mefx)
    https://msdn.microsoft.com/en-us/library/ff576068%28v=vs.110%29.aspx


    * My new blog about VSX: http://www.visualstudioextensibility.com * Twitter: https://twitter.com/VSExtensibility * MZ-Tools productivity extension for Visual Studio: http://www.mztools.com.

    Friday, March 20, 2015 11:02 PM
    Moderator
  • Both of those links are very MEF generic and not Visual Studio specific. Following the instructions in the first link I added the trace statements to devenv.exe.config, but when I launched the debugger to debug the experimental instance of Visual Studio, I didn't see any of the trace statements in the Output window.

    As for the second link, I wouldn't be able to begin to guess what to specify for the switches, given that it's asking for a dll, and a Directory. I'm not trying to debug a dll, but a vsix file, and I wouldn't know for sure which directories to specify, given that I don't know where Visual Studio would have placed the different directories needed for the mefx tool to work.

    Monday, March 23, 2015 5:09 PM