I am trying to write a Microsoft Visual Studio extension that analyzes the code and notifies the user of each function's cyclomatic complexity score. I was accessing code for analysis through an IWpfTextView, however now I am noticing that IWpfTextView.TextViewLines only contains the lines of code that are visible on the screen. I need to be able to access the all the code and not just visible code in order to calculate cyclomatic complexity. Does anybody know how I could access all of the code? Thanks in advance!!
How to access source code of a file from a Visual Studio Extension
1.3k Views Asked by ddresner8 At
1
There are 1 best solutions below
Related Questions in VISUAL-STUDIO
- NuGet - Given a type name or a DLL, how can I find the NuGet package?
- Exception thrown at 0x0131EB06 Visual Studio
- Visual Studio 2015 Cordova Plugin Add Fail
- Cannot find InvalidCastException in C# Application
- generating C# code file during Visual Studio build
- Can I deploy multiple instances of my application on the same windows phone?
- Close the Solution Explorer window
- How to generate entity framework code-first migrations without using the package manager console?
- Implementing callback function for dialog-based application
- VB.net: How to make original variable value fulfill 2 statements?
- DLL being marked as DELETEPENDING
- String tokenizing in Visual Studio C++
- How to use "Multicharts Studies" in Visual Studio 2013?
- Programs Will Not Run In Visual Studio
- VB.Net: Display total when check boxes are checked
Related Questions in VSIX
- How to build Visual studio extension which install on top of an already installed extension
- In a VSIX package, how can I reuse the existing MEF for my dependency container?
- DirectX VSIX Installer Installation Failed
- In a Visual Studio Extension, how to detect when the debugger Continues
- In a Visual Studio Extension, get the line range of the function in which the debugger is stopped
- Adding a submenu to an existing menu in a Visual Studio 2013 extension
- How to tell Visual Studio to load only the extension I'm currently debugging (and nothing more)?
- The new project type and template does not show up after installing VSIX package
- VSIXInstaller.NoApplicableSKUsException: This extension is not installable on any currently installed products
- How to use newer Microsoft.CodeAnalysis reference in Roslyn analyzer targeting VS2015
- Creating VSIX package to install template to several project types?
- Get WPF control properties from the Properties Window
- How to access source code of a file from a Visual Studio Extension
- Visual Studio extension does not load in experimental instance
- How can I set a file name using a variable in a Visual Studio project template
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Using the code model of the automation model (EnvDTE) you would use EnvDTE.Project.CodeModel or EnvDTE.ProjectItem.FileCodeModel. See:
HOWTO: Get an EnvDTE.DTE instance from a Visual Studio package.
HOWTO: Navigate the code elements of a file from a Visual Studio .NET macro or add-in.
Each EnvDTE.CodeElement has GetStartPoint / GetEndPoint methods to get several relevant points. Given an EnvDTE.TextPoint you can create an EnvDTE.EditPoint (via TextPoint.CreateEditPoint) and then call EditPoint.GetText(...)
For VS 2015 and higher and C#/VB.NET, you can use the Compiler Platform (a.k.a. "Roslyn") where the syntax and semantic models are exposed by the compiler