Search code examples
c#visual-studio-2010debuggingvisual-studio-debuggingvsix

Unable to debug VSIX project


I'm trying to develop my first visual studio extensions project, I have VS10 SDK installed and was able to create a new project and can build it fine, however when I attempt to debug symbols are not loaded. I know that I can debug to VSIX project since I have downloaded a sample project online and it symbols are loaded and break points are being hit fine http://weshackett.com/2009/11/configure-vsix-project-to-enable-debugging/). So must be something specifically to do with the way I have created the VSIX project ( maybe !). One thing I do notice is that the dll and files aren't being copied over to the local "Application Data" area, only the manifest is being copied over, while for the sample project, all files are being copied over including the dll. I have compared project settings between both and they are both the same. I hope it makes sense, if I can provide any more detail then let me know...


Solution

  • OK I managed to get it working. In order to do so, I had to unload the vsix project and edit the file as an XML document.

    Either remove the following lines from the project file:

    <IncludeAssemblyInVSIXContainer>
        false
    </IncludeAssemblyInVSIXContainer>
    <IncludeDebugSymbolsInVSIXContainer>
        false
    </IncludeDebugSymbolsInVSIXContainer>
    <IncludeDebugSymbolsInLocalVSIXDeployment>
        false
    </IncludeDebugSymbolsInLocalVSIXDeployment>
    <CopyBuildOutputToOutputDirectory>
        false
    </CopyBuildOutputToOutputDirectory>
    <CopyOutputSymbolsToOutputDirectory>
        false
    </CopyOutputSymbolsToOutputDirectory>
    

    or set them to true:

    <IncludeAssemblyInVSIXContainer>
        true
    </IncludeAssemblyInVSIXContainer>
    <IncludeDebugSymbolsInVSIXContainer>
        true
    </IncludeDebugSymbolsInVSIXContainer>
    <IncludeDebugSymbolsInLocalVSIXDeployment>
        true
    </IncludeDebugSymbolsInLocalVSIXDeployment>
    <CopyBuildOutputToOutputDirectory>
        true
    </CopyBuildOutputToOutputDirectory>
    <CopyOutputSymbolsToOutputDirectory>
        true
    </CopyOutputSymbolsToOutputDirectory>
    

    or add them under the ... node if they don't exist.

    Once I removed these lines and rebuilt the solution, the dll and pdb were copied now as expected to the bin\debug folder as well as to the "AppData\Local\Microsoft\VisualStudio\10.0Exp\Extensions\" folder.