Mummy's blog
As Mother Made It – Mario Majčica's web log
Resetting the Visual Studio Experimental instance
Recently, I got into developing a couple of extensions for Visual Studio. As many of you know, once you create Visual Studio Package project (or any VSIX project), by default your application will be set to start debugging in a Visual Studio Experimental instance.
To safeguard your Visual Studio development environment from untested extensions that might change it, the Visual Studio provides an alternative Visual Studio instance that you can use to experiment. You are going to develop new extensions by using Visual Studio as usual, but you will run them by using this experimental instance.
This behavior is set as default by the Visual Studio Package project template and you can see it the following screenshot:
As you can see, we are pointing to the Visual Studio executable (we can vary that parameter for testing our extension with different versions of Visual Studio) and we are passing the following command line arguments to it:
This is sufficient to start Visual Studio in Experimental instance mode and once you hit F5 and start debugging you will notice that the started instace of visual studio in the application title bar contains the “Experimental Instance” suffix.
The default location of the experimental instance depends on the Visual Studio version number. For example, for Visual Studio 2013, the location is
All the files in the directory location are considered part of that instance. Any additional experimental instances will not be loaded by Visual Studio unless the directory name is changed to the default location.
Till here all fine, but what happens once you have “ruined” your experimental instance environment? Well, you will need to reset it. Although you can find all of this information on MSDN, it isn’t linked or clear enough on how to proceed.
folder you will find a utility called CreateExpInstance. Open your command prompt and position yourself in just mentioned directory (this is the default path for Visual Studio 2013 SDK, the same applies also for Visual Studio 2012, just change your path accordingly).
All you need to do now is to execute the following command
Once the cleanup is performed, the next experimental instance you lunch will found itself in a clean environment. In case you are working with Visual Studio 2012 change the VSInstance parameter to 11.0.
You can find more details about the CreateExpInstance Utility here .
By Mario Majcica
Related post, building visual studio projects with devenv.com, deploy ssis packages from tfs/vsts build/release, using global application host file in visual studio 2015+, 2 thoughts on “resetting the visual studio experimental instance”.
[…] write more about this argument. In case of debugging problems you can check one of my previous post Resetting the Visual Studio Experimental instance. If any do not hesitate to […]
[…] Resetting the Visual Studio Experimental instance […]
Leave a Reply Cancel reply
Your email address will not be published. Required fields are marked *
Save my name, email, and website in this browser for the next time I comment.
Signing Git Commits
Starting a tfs release via rest api, azure devops extension for xl deploy.
Instantly share code, notes, and snippets.
Diagonactic / ResetExperimentalInstance.ps1
- Download ZIP
- Star ( 0 ) 0 You must be signed in to star a gist
- Fork ( 0 ) 0 You must be signed in to fork a gist
- Embed Embed this gist in your website.
- Share Copy sharable link for this gist.
- Clone via HTTPS Clone using the web URL.
- Learn more about clone URLs
- Save Diagonactic/7e8aaeba8159621b87d2d42bcaa07190 to your computer and use it in GitHub Desktop.
<# | |
.SYNOPSIS | |
Resets (or creates with confirmation) the Visual Studio Experimental Instance | |
.DESCRIPTION | |
Given the parameters provided, will reset or create (if confirmation is given) the Experimental Instance used for Visual Studio Extensions Development located at the given InstanceName | |
for the given Version of Visual Studio. If the instance isn't found, you'll be prompted to confirm whether or not you want to create a new instance and the existing instances will | |
be listed to assist you in case you simply mistyped (or in the case of Visual Studio 2017, discovered that it had a hash in front of it). | |
.PARAMETER InstanceName | |
The name of the instance to reset (defined by the RootSuffix parameter, but may vary slightly for Visual Studio 2017). In Visual Studio 2017, this name will sometimes (always?) have a | |
hash value in front of it | |
.PARAMETER Version | |
The "internal version" of Microsoft Visual Studio (15.0 = 2017, 14.0 = 2015, etc) to reset the instance on. | |
#> | |
param( | |
[Parameter(Mandatory=$false, Position=0)][string]$InstanceName, | |
[Parameter(Mandatory=$false, Position=1)][string]$Version | |
) | |
function Get-VisualStudioVersions { | |
[OutputType([string[]])] | |
param() | |
process { | |
Write-Host "$($retVal.Count)..." | |
return $retVal.ToArray() | |
} | |
} | |
if ([string]::IsNullOrWhiteSpace($Version)) { | |
# Attempt to get the version of Visual Studio that's installed, assuming there's only one | |
$Local:Versions = New-Object System.Collections.Generic.List[string] | |
foreach($item in (Get-Item 'HKLM:\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\SxS\VS7' | Select-Object -Property Property).Property) { | |
$Local:Versions.Add($item) | |
} | |
if ($Local:Versions.Count -eq 0) { | |
Write-Error 'There were no Microsoft Visual Studio versions detected on this machine.' | |
exit | |
} | |
if ($Versions.Count -gt 1) { | |
Write-Host $Versions.Length | |
Write-Host "There were $($Versions.Length) versions of Microsoft Visual Studio installed on this machine." -ForegroundColor 'Red' | |
Write-Host "Which Version would you like to reset for?" -ForegroundColor "White" | |
$options = New-Object Collections.ObjectModel.Collection[Management.Automation.Host.ChoiceDescription] | |
$choices = New-Object System.Collections.Generic.List[string] | |
$i=0; | |
foreach($detectedVersion in $Versions) { | |
$choices.Add($detectedVersion) | |
$i += 1 | |
$options.Add((New-Object Management.Automation.Host.ChoiceDescription -ArgumentList "&$i. $detectedVersion")) | |
Write-Host "$i) $detectedVersion" | |
} | |
$options.Add((New-Object Management.Automation.Host.ChoiceDescription -ArgumentList "&C. Cancel")) | |
$decision = $Host.UI.PromptForChoice("Version Selection", "Select a Version", $options, 1) | |
if (($decision -gt $choices.Count) -or ($decision -lt 0)) { | |
Write-Error "Cancelled." | |
exit | |
} | |
$Version = $choices[$decision] | |
} | |
else { | |
Write-Host $Versions | |
Write-Warning "Auto-selecting version $Local:Versions" | |
$Version = $Local:Versions | |
} | |
} | |
$InstallPath = "$((Get-ItemProperty 'HKLM:\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\SxS\VS7' | Select-Object $Version).$Version)" | |
$CreateExperimentalInstance = [System.IO.Path]::Combine($InstallPath, "VSSDK\VisualStudioIntegration\Tools\Bin\CreateExpInstance.exe") | |
if (-not (Test-Path $CreateExperimentalInstance -PathType Leaf)) { | |
Write-Warning "Couldn't find CreateExpInstance.exe at $CreateExperimentalInstance" | |
Write-Warning "Make sure you have the Visual Studio SDK Installed" | |
exit | |
} | |
# Get the location where Visual Studio Profiles are stored | |
$VisualStudioInstancePath = [System.IO.Path]::Combine($env:LOCALAPPDATA, "Microsoft\VisualStudio") | |
Write-Verbose "Looking in instance path: $VisualStudioInstancePath" | |
if (-not (Test-Path $VisualStudioInstancePath -PathType Container)) { | |
Write-Error "Couldn't locate the path for the Visual Studio profiles. Expected path was: '$VisualStudioInstancePath'" | |
exit | |
} | |
if ([string]::IsNullOrWhiteSpace($InstanceName)) { | |
Write-Host "No Experimental Instance was Specified - Select an instance to use and set it as the first parameter of this script" | |
Get-ChildItem $VisualStudioInstancePath | |
exit | |
} | |
$ExperimentalInstancePath = [System.IO.Path]::Combine($VisualStudioInstancePath, "${Version}$InstanceName") | |
Write-Verbose "Looking in instance path: $ExperimentalInstancePath" | |
if (-not (Test-Path $ExperimentalInstancePath -PathType Container)) { | |
# We'll do one extra check for the "_" version of the path since user input might have been wrong with the way VS2017 handles it | |
$ExperimentalInstancePath = [System.IO.Path]::Combine($VisualStudioInstancePath, "${Version}_$InstanceName") | |
$Local:OldInstanceName = $InstanceName | |
$InstanceName = "_$InstanceName" | |
Write-Verbose "Also checking instance path: $ExperimentalInstancePath" | |
if (-not (Test-Path $ExperimentalInstancePath -PathType Container)) { | |
# Reset it back to the original name the user provided since we couldn't find eiher | |
$ExperimentalInstancePath = [System.IO.Path]::Combine($VisualStudioInstancePath, "${Version}$InstanceName") | |
$InstanceName = $Local:OldInstanceName | |
$Instances = (Get-ChildItem $VisualStudioInstancePath ${Version}*) | |
if ($Instances.Length -eq 0) { | |
Write-Error "Couldn't find a Visual Studio profile for Microsoft Visual Studio $Version in '$VisualStudioInstancePath'" | |
exit | |
} | |
Write-Host "The Microsoft Visual Studio $Version experimental instance named '$InstanceName' was not found, however, others were:" | |
foreach($existingInstance in $Instances) { | |
Write-Host "$existingInstance" | |
} | |
$options = New-Object Collections.ObjectModel.Collection[Management.Automation.Host.ChoiceDescription] | |
$options.Add((New-Object Management.Automation.Host.ChoiceDescription -ArgumentList '&Yes')) | |
$options.Add((New-Object Management.Automation.Host.ChoiceDescription -ArgumentList '&No')) | |
$decision = $Host.UI.PromptForChoice("Instance Doesn't Exist", "Resetting the instance named '$InstanceName' will create a new experimental instance. Are you sure you want to do that?", $options, 1) | |
if ($decision -ne 0) { | |
exit | |
} | |
} | |
} | |
. $CreateExperimentalInstance /Reset /VSInstance=$Version /RootSuffix=$InstanceName | |
Write-Host "Experimental Instance for Microsoft Visual Studio $Version named '$InstanceName' was reset." |
Resetting Visual Studio Experimental Instance to its super-clean initial state
If you are doing Visual Studio extensibility (VSX) work, you are probably aware of the existence of the Visual Studio "Experimental" instance. This is basically an instance of VS that has its own isolated registry, settings, extensions, etc. This allows you to test your extensions to VS without polluting your main development environment.
Sometimes, the environment might get corrupted for whatever reason, or it might be that you just want to test your extension with a clean environment after messing with it for a while.
Read full article
No Comments
Harshit Shrivastava
Random ramblings on bits and bytes, resetting visual studio’s experimental instance to its super-clean state.
In order to create Visual Studio extensions (VSIX), one needs to download the Visual Studio SDKs (freely available) from the Microsoft’s website. Those of you doing the VSIX work are probably already aware of the Visual Studio’s “experimental” instance.
This experimental instance of Visual studio runs just like an isolated instance, having its own registry values, settings, extensions, etc. This allows testing of extensions without affecting the development environment of Visual Studio at all.
Sometimes the “experimental” instance gets corrupted, may be due to installations of some extensions, some registry values getting corrupted, or for any other reason, whatsoever. Or may be, we just want to test the extension with some custom settings and then revert back to the original clean settings.
The Visual Studio 2010, 2012 and 2013 come with a tool to reset the settings which is available from the start menu, named, “Reset the Visual Studio xxxx Experimental instance”. That does not, however, give the pristine environment that was available the first time before even testing the first extension.
To get a super clean instance, follow these steps. These are for Visual Studio 2012, but same can be followed for VS2010 and VS2013 also.
- Close all running instances of Visual Studio.
- Delete the entire folder %LocalAppData%\Microsoft\VisualStudio\11.0Exp60.
- Go to Run, type regedit and press Enter.
- Delete the registry key HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0Exp60.
- Delete the registry key HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0Exp60_Config.
- Run the command “Reset the Microsoft Visual Studio 2012 Experimental instance” from your start menu.
Now, the experimental instance of Visual Studio is reset to its super clean instance. If you frequently keep developing extensions, you would appreciate the install/reset experience provided by VS2010 onwards. If not, resetting does not sound that scary, does it 😉 . So without worrying about the possibility of experimental instance getting corrupted permanently, keep developing extensions. Happy extending 😀 .
Share this:
Leave a comment cancel reply.
- Already have a WordPress.com account? Log in now.
- Subscribe Subscribed
- Copy shortlink
- Report this content
- View post in Reader
- Manage subscriptions
- Collapse this bar
Matthew S. Dippel The Official Blog*
Resetting the visual studio experimental instance visual studio 2010-2017 via powershell.
There’s a handful of things that you have to do frequently enough when debugging a Visual Studio extension that it becomes almost routine, but not frequently enough for you to actually remember the exact shape of the command you need to run.
Since I got horribly tired of having to hit up Bing every time I needed to remember the specific command, I decided to document some of them here.
The TL;DR; - Use PowerShell to Reset the Visual Studio Experimental Instance
I’ve created a simple script to reset the Visual Studio instance, available here . It takes two parameters, -Version and -InstanceName (which matches the “RootSuffix” parameter used … most of the time). You needn’t run it from a Developer Command Prompt, it grabs the install locations from the registry.
Some Useful Bits to Remember
Visual studio version mapping and .net framework.
Marketing Version | Actual Version | Framework Versions |
---|---|---|
2010 | 10.0 | 4.0 |
2012 | 11.0 | 4.5.2 |
2013 | 12.0 | 4.5.2 |
2015 | 14.0 | 4.6 |
2017 | 15.0 | 4.6.2 |
Default Visual Studio Paths
For these defaults, I’m assuming you’re on a 64-bit operating system. If you’re still stuck banging rocks together on a 32-bit OS, just knock out the (x86) where you see it.
Visual Studio 2010 - 2015
The paths for these versions have been pretty predictable. They start in %ProgramFiles(x86)% , which usually maps to C:\Program Files (x86) and are stored in Microsoft Visual Studio 1x.x where x corresponds to one of version numbers in the Actual column.
Install Root:
… or if you prefer cmd.exe :
Visual Studio 2017
Things were reorganized a little bit with Visual Studio 2017. The install root is now located at:
Where <Edition> is going to correspond to the edition, Community, Professional or Enterprise.
In addition, the RootSuffix , at least on my machine, is only part of the suffix name. This is a fact that Visual Studio understands, but the tool for creating/managing the experimental instances from the command prompt does not.
The PowerShell script provided above will provide you with experimental instance names if you attempt to reset one that doesn’t exist (as would happen if you provided Exp but the name was actually _70a4f204Exp
Refresh the Experimental Instance with the Script
Basic help can be found by typing Get-Help ResetExperimentalInstance.ps1 -Full , but here’s how you use it:
Version - Optional - If you have only one version of Visual Studio installed. Note that this includes applications that use other versions of Visual Studio, like SQL Management Studio and System Center Configuration Manager’s management tools. If you have more than one version installed, the script will exit but will print the versions that are available.
InstanceName - Required - Usually the same as what is provided as the /RootSuffix parameter in the Debug panel within Visual Studio for your extension. However, it may actually be _[some 32-bit Hex][RootSuffix] , i.e. _71af83c4Exp for the Exp instance. If a corresponding folder for that instance is not found, you’ll be given a list of all of the instances that are found for the provided version and prompted as to whether or not you want to create a new experimental instance.
The _ in the long name is required for the Visual Studio provided tool, CreateExpInstance.exe , which the script uses. However, the script will look for a folder that only differs by the starting _ and will correct your InstanceName if that’s the only difference.
No comments :
Post a Comment
- Stay Frosty - Constructor and Method Block Highlighter, Text Clarity and Customization for Visual Studio
- Diagonactic Enums - Helper methods for C#/VB.Net Enums Truly Constrained to System.Enum (written in C++/CLI and MSIL)
Blog Archive
- ► October ( 1 )
- ► September ( 2 )
- HOWTO: Import Keybase.io Public Keys to SSH author...
- Resetting the Visual Studio Experimental Instance ...
- ► November ( 1 )
- ► September ( 1 )
- ► July ( 1 )
- ► April ( 1 )
- ► March ( 2 )
- ► February ( 4 )
- ► August ( 2 )
- ► June ( 1 )
- ► May ( 1 )
- ► February ( 2 )
- ► November ( 3 )
- ► December ( 6 )
- ► December ( 1 )
- ► January ( 1 )
- ► August ( 1 )
- ► March ( 1 )
- ► April ( 2 )
- ► July ( 3 )
- ► October ( 2 )
- ► May ( 3 )
- Latest Articles
- Top Articles
- Posting/Update Guidelines
- Article Help Forum
- View Unanswered Questions
- View All Questions
- View C# questions
- View C++ questions
- View Javascript questions
- View Visual Basic questions
- View .NET questions
- CodeProject.AI Server
- All Message Boards...
- Running a Business
- Sales / Marketing
- Collaboration / Beta Testing
- Work Issues
- Design and Architecture
- Artificial Intelligence
- Internet of Things
- ATL / WTL / STL
- Managed C++/CLI
- Objective-C and Swift
- System Admin
- Hosting and Servers
- Linux Programming
- .NET (Core and Framework)
- Visual Basic
- Web Development
- Site Bugs / Suggestions
- Spam and Abuse Watch
- Competitions
- The Insider Newsletter
- The Daily Build Newsletter
- Newsletter archive
- CodeProject Stuff
- Most Valuable Professionals
- The Lounge
- The CodeProject Blog
- Where I Am: Member Photos
- The Insider News
- The Weird & The Wonderful
- What is 'CodeProject'?
- General FAQ
- Ask a Question
- Bugs and Suggestions
Common Visual Studio Extension Woes
As a developer of a rather popular Visual Studio extension, I have often had my fair share of issues when dealing with some of the quirks involved when building an extension. 90% of the time, these issues generally center on the debugging process. This post focuses on a few of these and how to go about resolving them.
My Extension Can't Be Found
On numerous occasions, when working with Glyphfriend and adding some new features or refactoring things, I'll receive the following error message when attempting to build the application:
Extension '[Insert-Guid-Here]' could not be found. Please make sure the extension has been installed.
Although it's right there, it can't seem to be found. There are a few ways to try and troubleshoot this, which vary in rates of success.
Option 1: Reset Command Line Arguments
Visual Studio handles debugging extensions by spinning up an "experimental" instance of the IDE and basically installing your extension to the said instance so that you can play with it. If you have the previously mentioned "Extension cannot be found." error, then you may need to try resetting the arguments.
Just follow these steps:
- Right-click on your Project in the Solution Explorer.
- Choose Properties .
- Select the Debug tab on the left.
- Clear out the Command Line Arguments box.
- Build your Solution manually or via CTRL+Shift+B .
- Set the Command Line Arguments to /rootsuffix Exp .
- Rebuild the Project .
Option 2: Tinkering with the Experimental Instance
If the previous approach didn't work, then you might have to do a bit of tinkering with the experimental instance of Visual Studio as its settings may have gotten a bit out of whack.
You can try some of the following approaches to tackle that issue:
- Manually open and close an experimental instance of Visual Studio to reset its state . You can find this by searching your local machine for "Experimental".
- Update the package version of your extension in the manifest . Updating the version number can assist with breaking the experimental instance out of said funk.
- Run the Reset the Visual Studio 2015 Experimental Instance tool .
Option 3: Burninate the Folder
If those don't work, one final approach that I found success with is to explicitly clear out the Visual Studio Experimental Settings folder for your current user account. This folder should contain all of the settings for your experimental instance, which will be recreated when the instance is launched.
The folder can be found at the following location:
This fix was the most consistent in my experience, but your mileage may vary.
Debugger Issues and Symbols Not Loading...
Another point of frustration that I experienced fairly frequently was the Visual Studio debugger not properly attaching to the experimental instance or loading the symbols for the project. Either of these won't allow the debugger to attach and thus make actual debugging rather difficult.
The first thing to ensure is that you are running in a Debug configuration or that you at least have a DEBUG constant defined checked and Optimize Code unchecked within your Build Properties.
If you find that you still can't debug your application after this, consider reverting to Option 3 of the previous section and delete the Experimental Instance folder once again at the following location:
You'll need to do this each time that you launch your extension to ensure that any previous settings are changed and symbols are updated properly (or if you are handy, you could write a script to try to do this for you).
CodeProject
This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)
IMAGES
VIDEO
COMMENTS
One key point of VS extension development is to reset experimental instance of Visual Studio, which I am having problem with. ... The Visual Studio Experimental instance directory C:\Users\Mi\AppData\Local\Microsoft\VisualStudio\10.0Exp does not exist. CreateExpInstance: warning : The Visual Studio directory C:\Users\Mi\AppData\Local\Microsoft ...
To safeguard your Visual Studio development environment from untested applications that might change it, the VSSDK provides an experimental space that you can use to experiment. You develop new applications by using Visual Studio as usual, but you run them by using this experimental instance.
Resetting the Experimental Instance. Inside the C:\Program Files (x86)\Microsoft Visual Studio 12.0\VSSDK\VisualStudioIntegration\Tools\Bin folder, you will find a utility called CreateExpInstance. Open your command prompt and position yourself in just mentioned directory (this is the default path for Visual Studio 2013 SDK, the same applies ...
When you are working on a Visual Studio extension, you can press F5 to open the default experimental instance and install the current extension. If no experimental instance is available, Visual Studio creates one that has the default settings. The default location of the experimental instance depends on the Visual Studio version number.
It's called Reset the Visual Studio Experimental Instance, and it ships as part of the Visual Studio SDK. This script removes all references to your extensions from the experimental environment, so you can start from scratch. You can get to this script in one of two ways: From the desktop, find Reset the Visual Studio Experimental Instance.
Parameters /Reset Deletes the experimental instance, and then creates a new one. What does reset do? Once the reset is performed, the next experimental instance you launch will find itself in a clean environment. Since you are unable to load Experimental Instance, please check the following to see if the issue persists.
Reset and Clean Visual Studio Experimental Instance; Reset Exp Instance. In Visual Studio's top menu under Tools, a new command is now visible: Clicking the Reset Experimental Instance button will prompt you to confirm the resetting process. The progress of the resetting process. When it finishes, the progress form will close.
This is sufficient to start Visual Studio in Experimental instance mode and once you hit F5 and start debugging you will notice that the started instace of visual studio in the application title bar contains the "Experimental Instance" suffix. The default location of the experimental instance depends on the Visual Studio version number.
Resets (or creates with confirmation) the Visual Studio Experimental Instance.DESCRIPTION: Given the parameters provided, will reset or create (if confirmation is given) the Experimental Instance used for Visual Studio Extensions Development located at the given InstanceName: for the given Version of Visual Studio.
The Visual Studio SDK does come with a tool to reset the experimental instance, available from your Start menu with the name "Reset the Microsoft Visual Studio 2010 Experimental instance". That will not, however, give you the pristine environment you got the first time you start the experimental instance to test your first extension. ...
The Visual Studio 2010, 2012 and 2013 come with a tool to reset the settings which is available from the start menu, named, "Reset the Visual Studio xxxx Experimental instance". That does not, however, give the pristine environment that was available the first time before even testing the first extension.
Unregister an extension. If you have been experimenting with a lot of different VSPackages and want to remove them from the experimental instance, you can just run the Reset command. Look for Reset the Visual Studio Experimental Instance on the start page of your computer, or run this command from the command line: Windows Command Prompt. Copy ...
The TL;DR; - Use PowerShell to Reset the Visual Studio Experimental Instance. I've created a simple script to reset the Visual Studio instance, available here. It takes two parameters, -Version and -InstanceName (which matches the "RootSuffix" parameter used … most of the time).
In developing some extensions I grew increasing tired of having to manually reset the experimental instance of Visual Studio. You typically do this by deleting the required files in the AppData directory as well as the "Exp" key in the registry. ... Having to do this multiple times during some testing I wrote an extension and open sourced ...
Run the Reset the Visual Studio 2015 Experimental Instance tool. Option 3: Burninate the Folder. If those don't work, one final approach that I found success with is to explicitly clear out the Visual Studio Experimental Settings folder for your current user account. This folder should contain all of the settings for your experimental instance ...
Reset experimental instance of Visual Studio 2015/2017 #2583. FeodorFitsner opened this issue Aug 27, 2018 · 2 comments Labels. Visual Studio 2015 Visual Studio 2017. Milestone. images-update-201... Comments. Copy link Member. FeodorFitsner commented Aug 27, 2018.
Reset the Visual Studio SDK experimental instance. On Windows 7: ... On later versions of Windows: On the Start screen, type Reset the Microsoft Visual Studio <version> Experimental Instance. A command prompt window appears. When you see the words Press any key to continue, click ENTER. After the window closes, open Visual Studio.
If you are developing multiple extensions, or just exploring outcomes with different versions of your extension code, your experimental environment may stop working the way it should. In this case, you should run the reset script. It's called Reset the Visual Studio Experimental Instance, and it ships as part of the Visual Studio SDK.
This topic relates to ReSharper 8, and has not been updated to ReSharper 9 or the ReSharper Platform. Visual Studio's "Experimental Instance" feature is intended for developing and debugging Visual Studio extensions, and maintains a separate copy of the configuration needed to run Visual Studio. Each experimental instance can have an entirely different configuration, from theme and window ...
Currently my testing work liks this: Put in MessageBox and/or WriteLine and compile the code. Remove the previous instance of the extension in "Extensions and updates". Close Visual Studio. Install the extension from the vsix file. Start Visual Studio. Test the extension. which of course takes a long time. visual-studio-2013.